5 research outputs found
PRAM Programming: Theory vs. Practice
In this paper we investigate the practical viability of PRAM programming within the BSP framework. We argue that there is a necessity for PRAM computations in situations where the problem exhibits poor data locality. We introduce a C++ PRAM simulator that is built on top of the Oxford BSP Toolset, BSPlib, and provide a succinct PRAM language. Our approach achieves simplicity of programming over direct-mode BSP programming for reasonable overhead cost. We objectively compare optimized BSP algorithms with PRAM algorithms implemented with our library and provide encouraging experimental results for the latter style of programming. 1 Introduction Research in the theory of parallel computation has primarily focussed on parallel machines that communicate via shared memory, the so called Parallel Random Access Machines (PRAMs)[7]. A PRAM is an ideal parallel computer: a potentially unbounded set of processors sharing a global address space. The processors work synchronously and during each ..
Bandwidth, Space and Computation Efficient PRAM Programming: The BSP Approach
In this paper we investigate the tractability of PRAM simulations on the IBM SP2 system through the Bulk-Synchronous Parallel model. We present a portable C++ class library that provides PRAM style shared memory facilities for any parallel or distributed system. We also obtain almost optimal speedup for representative PRAM algorithms, thus demonstrating the suitability of our methods for high performance parallel systems. 1 Introduction The Parallel Random Access Machine (PRAM) [1] has been one of the most widely used models of parallel computing. The PRAM is an ideal parallel computer: a potentially unbounded set of processors sharing a global address space. The processors work synchronously and during each time step each processor either performs a computation or accesses a single data-word from the global address space in unit time. The PRAM thus abstracts parallelism by stripping away considerations such as communication latency, memory and network conflicts during routing, bandwi..
Bandwidth, Space and Computation Efficient PRAM Programming: The BSP Approach
In this paper we investigate the tractability of PRAM simulations on the IBM SP2 system through the Bulk-Synchronous Parallel model. We present a portable C++ class library that provides PRAM style shared memory facilities for any parallel or distributed system. We also obtain almost optimal speedup for representative PRAM algorithms, thus demonstrating the suitability of our methods for high performance parallel systems
PRAM Programming: Theory vs. Practice
In this paper we investigate the practical viability of PRAM programming within the BSP framework. We argue that there is a necessity for PRAM computations in situations where the problem exhibits poor data locality. We introduce a C++ PRAM simulator that is built on top of the Oxford BSP Toolset, BSPlib, and provide a succinct PRAM language. Our approach achieves simplicity of programming over direct-mode BSP programming for reasonable overhead cost. We objectively compare optimised BSP algorithms with PRAM algorithms implemented with our C++ PRAM library and provide encouraging experimental results for the latter style of programming