Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
How much parallelism is there in irregular applications?
Kulkarni M., Burtscher M., Inkulu R., Pingali K., Casçaval C.  PPoPP 2009 (Proceedings of the 14th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, Raleigh, NC, Feb 14-18, 2009)3-14.2009.Type:Proceedings
Date Reviewed: Apr 27 2009

Most success in parallel computing is achieved with regular data parallel algorithms, where the same task is independently performed on all elements of a data structure--typically, a dense vector or matrix. However, it is not a priori clear how much parallelism is inherent in irregular applications with amorphous data parallelism; such applications operate on pointer-based graphs, where, due to algorithmic constraints at any time, only a subset of graph nodes can be simultaneously processed.

For analyzing such algorithms, Kulkarni et al. developed the ParaMeter tool, a simulator for programs written in a sequential style, extended by an iteration construct for the parallel processing of all elements of a set. The simulation proceeds in a number of rounds where essentially, in every round, a maximal set of independent nodes is selected, and then the effect of processing these nodes in parallel is determined. The number of independent nodes per round thus serves as a measure for the amount of parallelism inherent in the algorithm.

As the authors point out, the resulting parallelism profile is influenced by the tool’s greedy scheduling strategy and by the particular (random) choice of a maximal independent set of nodes per round (there may exist better choices that amount to more parallelism). However, the paper contains sample analyses of six algorithms, five of which seem insensitive to the choices; only the last one significantly underestimates the available parallelism. Therefore, the tool is certainly valuable as an initial guide for the development of irregular parallel applications.

Reviewer:  Wolfgang Schreiner Review #: CR136744 (1009-0915)
Bookmark and Share
  Reviewer Selected
Featured Reviewer
 
 
Parallel Programming (D.1.3 ... )
 
Would you recommend this review?
yes
no
Other reviews under "Parallel Programming": Date
How to write parallel programs: a first course
Carriero N. (ed), Gelernter D. (ed), MIT Press, Cambridge, MA, 1990. Type: Book (9780262031714)
Jul 1 1992
Parallel computer systems
Koskela R., Simmons M., ACM Press, New York, NY, 1990. Type: Book (9780201509373)
May 1 1992
Parallel functional languages and compilers
Szymanski B. (ed), ACM Press, New York, NY, 1991. Type: Book (9780201522433)
Sep 1 1993
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy