Pthreads for Dynamic Parallelism,

Abstract

Expressing a large number of lightweight, parallel threads in a shared address space significantly eases the task of writing a parallel program. Threads can be dynamically created to execute individual parallel tasks; the implementation schedules these threads onto the processors and effectively balances the load. However, unless the threads scheduler is designed carefully, such a parallel program may suffer poor space and time performance. Th this paper, we evaluate the performance of a native, lightweight POSIX threads (Pthreads) library on a shared memory machine using a set of parallel benchmarks that dynamically create a large number of threads. By studying the performance of one of the benchmarks, matrix multiply, we show how simple, yet provably good modifications to the library can result in significantly improved space and time performance. With the modified Pthreads library, each of the parallel benchmarks performs as well as its coarse-grained, hand-partitioned counterpart. These results demonstrate that, provided we use a good scheduler, the rich functionality and standard API of Pthreads can be combined with the advantages of dynamic, lightweight threads to result in high performance.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Apr 01, 1998
Accession Number
ADA343398

Entities

People

  • Girija J. Narlikar
  • Guy E. Blelloch

Organizations

  • Carnegie Mellon University

Tags

Communities of Interest

  • Air Platforms
  • Human Systems
  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Algorithms
  • Computations
  • Computer Programming
  • Computer Programs
  • Computer Science
  • Computers
  • Data Sets
  • Lightweight
  • Multithreading
  • Operating Systems
  • Scheduling (Production)
  • Simulations
  • Sparse Matrix
  • Standards
  • Switches
  • Trees (Data Structures)
  • X-Ray Computed Tomography

Fields of Study

  • Computer science

Readers

  • Distributed Systems and Data Platform Development
  • Mycotoxin ecology in Amazonian ecosystems.
  • Systems Analysis and Design

Technology Areas

  • Space