skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Designing a unified programming model for heterogeneous machines

Abstract

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.

Authors:
; ;
Publication Date:
Research Org.:
Oak Ridge National Lab. (ORNL), Oak Ridge, TN (United States). Oak Ridge Leadership Computing Facility (OLCF)
Sponsoring Org.:
USDOE Office of Science (SC)
OSTI Identifier:
1567602
Resource Type:
Conference
Journal Name:
SC '12: Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis; 10-16 Nov. 2012; Salt Lake City, UT, USA
Additional Journal Information:
Conference: SC '12: Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis
Country of Publication:
United States
Language:
English

Citation Formats

Garland, Michael, Kudlur, Manjunath, and Zheng, Yili. Designing a unified programming model for heterogeneous machines. United States: N. p., 2012. Web. doi:10.1109/SC.2012.48.
Garland, Michael, Kudlur, Manjunath, & Zheng, Yili. Designing a unified programming model for heterogeneous machines. United States. doi:10.1109/SC.2012.48.
Garland, Michael, Kudlur, Manjunath, and Zheng, Yili. Thu . "Designing a unified programming model for heterogeneous machines". United States. doi:10.1109/SC.2012.48.
@article{osti_1567602,
title = {Designing a unified programming model for heterogeneous machines},
author = {Garland, Michael and Kudlur, Manjunath and Zheng, Yili},
abstractNote = {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.},
doi = {10.1109/SC.2012.48},
journal = {SC '12: Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis; 10-16 Nov. 2012; Salt Lake City, UT, USA},
number = ,
volume = ,
place = {United States},
year = {2012},
month = {11}
}

Conference:
Other availability
Please see Document Availability for additional information on obtaining the full-text document. Library patrons may search WorldCat to identify libraries that hold this conference proceeding.

Save / Share: