A flexible operation execution model for shared distributed objects
Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Integrating task and data parallelism using shared objects
ICS '96 Proceedings of the 10th international conference on Supercomputing
A task- and data-parallel programming language based on shared objects
ACM Transactions on Programming Languages and Systems (TOPLAS)
Hi-index | 0.00 |
We have developed a parallel programming model in which partitioned shared objects encapsulate the state and the distribution of data structures in shared-data objects. In this model, the state of an object can be accessed through sequential or parallel operations. This paper describes the object model and Partition Dependency Graphs (PDGs), a mechanism our runtime system uses to prefetch data, reduce access overhead, and increase the overlap between computation and communication during the execution of parallel operations with static access patterns. This mechanism can be applied to statically as well as dynamically allocated objects, i.e., objects for which size and distribution may or may not be known at compile time. This paper illustrates the effectiveness of our prefetching mechanism with two applications: Successive OverRelaxation (SOR) and Fast Fourier Transform (FFT). With prefetching, we obtained up to 30% performance improvement for the first one and almost 10% improvement for the second one.