Abstract
Research on programming distributed memory multiprocessors has resulted in a well‐understood programming model, namely data‐parallel programming. However, data‐parallel programming in a multithreaded environment is far less understood. For example, if multiple threads within the same process belong to different data‐parallel computations, then the architecture, compiler, or run‐time system must ensure that relative indexing and collective operations are handled properly and efficiently. We introduce a run‐time‐based solution for data‐parallel programming in a distributed memory environment that handles the problems of relative indexing and collective communications among thread groups. As a result, the data‐parallel programming model can now be executed in a multithreaded environment, such as a system using threads to support both task and data parallelism.
Highlights
Data-parallel programming has emerged as the premiere programming model for distributed memory multiprocessors (DMMPs)
This article addresses the issues of supporting collective operations and relative indexing among threads in a distributed memory environment
We provide the design for ropes in the context of the Chant system, where a rope defines the scope of collective operations with respect to threads
Summary
Data-parallel programming has emerged as the premiere programming model for distributed memory multiprocessors (DMMPs) This is primarily due to the fact that the parallelism stems from simultaneously performing the same (or similar) operations on different portions of a data set. Central to the data-parallel programming model is the idea that, on each processor, some agent (usually a process) is responsible for executing parallel operations on the section of data elements that reside in local memory. To implement this model, each agent is given a relative index from 0 to n - 1, assuming there are n agents.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.