Designing a Unified Programming Model for Heterogeneous Machines

Michael Garland, Manjunath Kudlur, Yili Zheng
Conference on High Performance Computing Networking, Storage and Analysis (SC ’12), 2012


   author={Michael Garland and Manjunath Kudlur and Yili Zheng},

   title={Designing a Unified Programming Model for Heterogeneous Machines},

   booktitle={SC ’12: Proc. Conference on High Performance Computing Networking, Storage and Analysis},




Download Download (PDF)   View View   Source Source   



While high-efficiency machines are increasingly embracing heterogeneous architectures and massive multithreading, contemporary mainstream programming languages reflect a mental model in which processing elements are homogeneous, concurrency is limited, and memory is a flat undifferentiated pool of storage. Moreover, the current state of the art in programming heterogeneous machines tends towards using separate programming models, such as OpenMP and CUDA, for different portions of the machine. Both of these factors make programming emerging heterogeneous machines unnecessarily difficult. We describe the design of the Phalanx programming model, which seeks to provide a unified programming model for heterogeneous machines. It provides constructs for bulk parallelism, synchronization, and data placement which operate across the entire machine. Our prototype implementation is able to launch and coordinate work on both CPU and GPU processors within a single node, and by leveraging the GASNet runtime, is able to run across all the nodes of a distributed-memory machine.
No votes yet.
Please wait...

* * *

* * *

* * *

HGPU group © 2010-2023 hgpu.org

All rights belong to the respective authors

Contact us: