A Comparison of Programming Models for Multiprocessors with Explicitly Managed Memory Hierarchies

Scott Schneider, Jae-Seung Yeom, Benjamin Rose, John C. Linford, Adrian Sandu, Dimitrios S. Nikolopoulos

Research output: Chapter in Book/Report/Conference proceedingConference contribution

19 Citations (Scopus)


On multiprocessors with explicitly managed memory hierarchies (EMM), software has the responsibility of moving data in and out of fast local memories. This task can be complex and error-prone even for expert programmers. Before we can allow compilers to handle the complexity for us, we must identify the abstractions that are general enough to allow us to write applications with reasonable effort, yet speci?c enough to exploit the vast on-chip memory bandwidth of EMM multi-processors. To this end, we compare two programming models against hand-tuned codes on the STI Cell, paying attention to programmability and performance. The ?rst programming model, Sequoia, abstracts the memory hierarchy as private address spaces, each corresponding to a parallel task. The second, Cellgen, is a new framework which provides OpenMP-like semantics and the abstraction of a shared address spaces divided into private and shared data. We compare three applications programmed using these models against their hand-optimized counterparts in terms of abstractions, programming complexity, and performance.
Original languageEnglish
Title of host publicationProceedings of the 14th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming
Place of PublicationNew York, NY, USA
Number of pages10
ISBN (Print)978-1-60558-397-6
Publication statusPublished - Feb 2009


Dive into the research topics of 'A Comparison of Programming Models for Multiprocessors with Explicitly Managed Memory Hierarchies'. Together they form a unique fingerprint.

Cite this