This paper presents a prototype runtime environment for programming and executing adaptive master-slave message passing applications on cluster of multiprocessors. A sophisticated portable runtime library provides transparent load balancing and exports a convenient application programming interface (API) for multilevel fork-join RPC-like parallelism on top of the Message Passing Interface. This API can be used directly or through OpenMP directives. A source-to-source translator converts programs that use an extended version of the OpenMP workqueuing execution model into equivalent programs with calls to the runtime library. Experimental results show that our runtime environment combines the simplicity of OpenMP with the performance of message passing.
['Panagiotis E. Hadjidoukas', 'Eleftherios D. Polychronopoulos', 'Theodore S. Papatheodorou']
OpenMP for Adaptive Master-Slave Message Passing Applications