DocumentCode
169133
Title
Cloud-based OpenMP Parallelization Using a MapReduce Runtime
Author
Wottrich, Rodolfo ; Azevedo, Rodolfo ; Araujo, Gabriel
Author_Institution
Univ. of Campinas, Campinas, Brazil
fYear
2014
fDate
22-24 Oct. 2014
Firstpage
334
Lastpage
341
Abstract
Harnessing the flexibility and scaling features of the cloud can open up opportunities to address some relevant research problems in scientific computing. Nevertheless, cloudbased parallel programming models need to address some relevant issues, namely communication overhead, workload balance and fault tolerance. Programming models, which work well in multicore machines (e.g. OpenMP), still do not offer a smooth transition path to the cloud, which could bridge the gap from a local prototype execution to a cloud production run. On the other hand, cloud-based execution models, like MapReduce, are very effective in performing regular fault-tolerant computation on large distributed workloads. In this paper we propose OpenMR, an execution model based on OpenMP semantics and MapReduce, which eases the task of programming parallel applications in the cloud. Specifically, this work addresses the problem of performing loop parallelization in a distributed environment, through the mapping of loop iterations to MapReduce nodes. By doing so, the cloud programming interface becomes the programming language itself, freeing the developer from the task of distributing workload and data, while enabling fault-tolerance and workload balancing. To assess the validity of the proposal, we modified benchmarks from the SPEC OMP2012 and Rodinia suites to fit the proposed model, developed I/O-bound synthetic benchmarks and validated them using Amazon AWS services. We compare the results to the execution of OpenMP in an SMP architecture, and show that OpenMR exhibits good scalability under a simple programming model.
Keywords
cloud computing; fault tolerant computing; natural sciences computing; parallel programming; programming languages; Amazon AWS services; MapReduce nodes; MapReduce runtime; OpenMP semantics; OpenMR; Rodinia suites; SMP architecture; SPEC OMP2012; cloud production run; cloud programming interface; cloud-based OpenMP parallelization; cloud-based execution models; cloud-based parallel programming models; communication overhead; distributed workloads; fault tolerance; fault-tolerant computation; loop parallelization; multicore machines; programming language; programming parallel applications; scaling features; scientific computing; synthetic benchmarks; workload balance; workload balancing; Computational modeling; Elasticity; Electronics packaging; Fault tolerance; Fault tolerant systems; Programming; Runtime; MapReduce; OpenMP; cloud computing; parallel programming;
fLanguage
English
Publisher
ieee
Conference_Titel
Computer Architecture and High Performance Computing (SBAC-PAD), 2014 IEEE 26th International Symposium on
Conference_Location
Jussieu
ISSN
1550-6533
Type
conf
DOI
10.1109/SBAC-PAD.2014.46
Filename
6970682
Link To Document