Abstract

In the multi-core era, much software has been developed using parallel programming technology, such as OpenMP, to take full advantage of the CPU cores. Nevertheless, in the era of big data, ubiquitous systems have enabled data collection on an unprecedented scale, the existing computing power and storage capacity can no longer effectively satisfy the needs of big data processing. MapReduce is a parallel programming model in cloud computing, which provides a new way to cope with the problem of OpenMP program's resource limitations for processing big data. In order to enable the legacy OpenMP-based program to take advantage of the virtue of cloud computing for processing big data, it is worth studying how to refactor it into MapReduce model. A detailed approach for refactoring OpenMP to MapReduce is proposed, and a prototype tool O2MR was developed in this paper. Two experiments show that the refactoring approach is efficient and the tool is helpful to refactoring process. In addition, the program execution times before and after refactoring were compared by five data sets, and the results demonstrate that the refactored program has better performance than the original in the face of big data, and the performance of the refactored program will be better as the amount of data increases.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call