TY - GEN
T1 - The aggregate function API
T2 - 10th Annual International Workshop on Languages and Compilers for Parallel Computing, LCPC 1997
AU - Dietz, H. G.
AU - Mattox, T. I.
AU - Krishnamurthy, G.
PY - 1998
Y1 - 1998
N2 - The concept of “data parallelism” is a pervasive force throughout parallel processing. Although a certain level of processing-element autonomy can help performance, the fact is that many parallel algorithms, applications, and compiler analysis techniques focus on identifying a set of data objects that can be processed using loosely synchronous parallelism. Thus, it is not surprising that a large number of communication libraries support at least a few synchronized aggregate operations on data. Over the past few years, we have developed eleven different types of PAPERS (Purdue’s Adapter for Parallel Execution and Rapid Synchronization) hardware specifically to efficiently implement aggregate functions for clusters of PCs or workstations. The Aggregate Function Application Program Interface (AFAPI) library was initially designed to be a portable high-level interface to the various types of PAPERS cluster hardware, so one would expect it to work well using this custom hardware, and it does work well. In this paper, we show that the AFAPI is also an efficient programming model for other types of parallel systems — especially shared memory multiprocessors. For many operations, AFAPI can outperform threads libraries and other more traditional shared memory programming models.
AB - The concept of “data parallelism” is a pervasive force throughout parallel processing. Although a certain level of processing-element autonomy can help performance, the fact is that many parallel algorithms, applications, and compiler analysis techniques focus on identifying a set of data objects that can be processed using loosely synchronous parallelism. Thus, it is not surprising that a large number of communication libraries support at least a few synchronized aggregate operations on data. Over the past few years, we have developed eleven different types of PAPERS (Purdue’s Adapter for Parallel Execution and Rapid Synchronization) hardware specifically to efficiently implement aggregate functions for clusters of PCs or workstations. The Aggregate Function Application Program Interface (AFAPI) library was initially designed to be a portable high-level interface to the various types of PAPERS cluster hardware, so one would expect it to work well using this custom hardware, and it does work well. In this paper, we show that the AFAPI is also an efficient programming model for other types of parallel systems — especially shared memory multiprocessors. For many operations, AFAPI can outperform threads libraries and other more traditional shared memory programming models.
UR - http://www.scopus.com/inward/record.url?scp=84957863061&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84957863061&partnerID=8YFLogxK
U2 - 10.1007/BFb0032699
DO - 10.1007/BFb0032699
M3 - Conference contribution
AN - SCOPUS:84957863061
SN - 3540644725
SN - 9783540644729
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 277
EP - 291
BT - Languages and Compilers for Parallel Computing - 10th International Workshop, LCPC 1997, Proceedings
A2 - Yew, Pen-Chung
A2 - Huang, Chua-Huang
A2 - Sadayappan, P.
A2 - Li, Zhiyuan
A2 - Chatterjee, Siddharta
A2 - Sehr, David
Y2 - 7 August 1997 through 9 August 1997
ER -