Back to Search Start Over

Task-based programming in COMPSs to converge from HPC to big data

Authors :
Rosa M. Badia
Sandra Corella
Jesús Labarta
Javier Conejero
Ministerio de Economía y Competitividad (España)
Generalitat de Catalunya
Intel-BSC Exascale Lab
Conejero, Javier [0000-0001-6401-6229]
Badia, Rosa M. [0000-0003-2941-5499]
Conejero, Javier
Badia, Rosa M.
Universitat Politècnica de Catalunya. Departament d'Arquitectura de Computadors
Universitat Politècnica de Catalunya. CAP - Grup de Computació d'Altes Prestacions
Barcelona Supercomputing Center
Source :
Digital.CSIC. Repositorio Institucional del CSIC, instname, Recercat. Dipósit de la Recerca de Catalunya, UPCommons. Portal del coneixement obert de la UPC, Universitat Politècnica de Catalunya (UPC)
Publication Year :
2017
Publisher :
SAGE Publications, 2017.

Abstract

Task-based programming has proven to be a suitable model for high-performance computing (HPC) applications. Different implementations have been good demonstrators of this fact and have promoted the acceptance of task-based programming in the OpenMP standard. Furthermore, in recent years, Apache Spark has gained wide popularity in business and research environments as a programming model for addressing emerging big data problems. COMP Superscalar (COMPSs) is a task-based environment that tackles distributed computing (including Clouds) and is a good alternative for a task-based programming model for big data applications. This article describes why we consider that task-based programming models are a good approach for big data applications. The article includes a comparison of Spark and COMPSs in terms of architecture, programming model, and performance. It focuses on the differences that both frameworks have in structural terms, on their programmability interface, and in terms of their efficiency by means of three widely known benchmarking kernels: Wordcount, Kmeans, and Terasort. These kernels enable the evaluation of the more important functionalities of both programming models and analyze different work flows and conditions. The main results achieved from this comparison are (1) COMPSs is able to extract the inherent parallelism from the user code with minimal coding effort as opposed to Spark, which requires the existing algorithms to be adapted and rewritten by explicitly using their predefined functions, (2) it is an improvement in terms of performance when compared with Spark, and (3) COMPSs has shown to scale better than Spark in most cases. Finally, we discuss the advantages and disadvantages of both frameworks, highlighting the differences that make them unique, thereby helping to choose the right framework for each particular objective.<br />This work is supported by the Spanish Government (SEV2015-0493), by the Spanish Ministry of Science and Innovation (contract TIN2015-65316-P), and by Generalitat de Catalunya (contracts 2014-SGR-1051 and 2014-SGR-1272). Javier Conejero's postdoctoral contract is cofinanced by the Ministry of Economy and Competitiveness under the Juan de la Cierva Formación postdoctoral fellowship number FJCI-2015-24651. This work is also supported by the Intel-BSC Exascale Lab. The Human Brain Project receives funding from the EU's Seventh Framework Programme (FP7/ 2007-2013) under grant agreement no. 604102.

Details

ISSN :
17412846 and 10943420
Volume :
32
Database :
OpenAIRE
Journal :
The International Journal of High Performance Computing Applications
Accession number :
edsair.doi.dedup.....a6f8f69e6a6b6fed79fc837b61e22a90
Full Text :
https://doi.org/10.1177/1094342017701278