skip to main content
DOE PAGES title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: On the adequacy of lightweight thread approaches for high-level parallel programming models

Abstract

High-level parallel programming models (PMs) are becoming crucial in order to extract the computational power of current on-node multi-threaded parallelism. The most popular PMs, such as OpenMP or OmpSs, are directive-based: the complexity of the hardware is hidden by the underlying runtime system, improving coding productivity. The implementations of OpenMP usually rely on POSIX threads (pthreads), offering excellent performance for coarse-grained parallelism and a perfect match with the current hardware. OmpSs is a task oriented PM based on an ad hoc runtime solution called Nanos++; it is the precursor of the tasking parallelism in the OpenMP tasking specification. A recent trend in runtimes and applications points to leveraging massive on-node parallelism in conjunction with fine-grained and dynamic scheduling paradigms. In this paper we analyze the behavior of the OpenMP and OmpSs PMs on top of the recently emerged Generic Lightweight Threads (GLT) API. GLT exposses a common API for lightweight thread (LWT) libraries that offers the possibility of running the same application over different native LWT solutions. We describe the design details of those high-level PMs implemented on top of GLT and analyze different scenarios in order to assess where the use of LWTs may benefit application performance. Our workmore » reveals those scenarios where LWTs overperform pthread-based solutions and compares the performance between an ad hoc solution and a generic implementation.« less

Authors:
 [1];  [1]; ORCiD logo [2];  [2];  [3]; ORCiD logo [2]
  1. Univ. Jaume I de Castelló (Spain)
  2. Barcelona Supercomputing Center (BSC), Barcelona (Spain)
  3. Argonne National Lab. (ANL), Argonne, IL (United States)
Publication Date:
Research Org.:
Argonne National Lab. (ANL), Argonne, IL (United States)
Sponsoring Org.:
Spanish Ministerio de Economia y Competitividad (MINECO); USDOE Office of Science (SC), Advanced Scientific Computing Research (ASCR) (SC-21)
OSTI Identifier:
1465734
Grant/Contract Number:  
AC02-06CH11357
Resource Type:
Accepted Manuscript
Journal Name:
Future Generations Computer Systems
Additional Journal Information:
Journal Volume: 84; Journal Issue: C; Journal ID: ISSN 0167-739X
Publisher:
Elsevier
Country of Publication:
United States
Language:
English
Subject:
97 MATHEMATICS AND COMPUTING; GLT; OmpSs; OpenMP; POSIX Threads; lightweight threads; programming models

Citation Formats

Castelló, Adrián, Mayo, Rafael, Sala, Kevin, Beltran, Vicenç, Balaji, Pavan, and Peña, Antonio J. On the adequacy of lightweight thread approaches for high-level parallel programming models. United States: N. p., 2018. Web. doi:10.1016/j.future.2018.02.016.
Castelló, Adrián, Mayo, Rafael, Sala, Kevin, Beltran, Vicenç, Balaji, Pavan, & Peña, Antonio J. On the adequacy of lightweight thread approaches for high-level parallel programming models. United States. doi:10.1016/j.future.2018.02.016.
Castelló, Adrián, Mayo, Rafael, Sala, Kevin, Beltran, Vicenç, Balaji, Pavan, and Peña, Antonio J. Wed . "On the adequacy of lightweight thread approaches for high-level parallel programming models". United States. doi:10.1016/j.future.2018.02.016. https://www.osti.gov/servlets/purl/1465734.
@article{osti_1465734,
title = {On the adequacy of lightweight thread approaches for high-level parallel programming models},
author = {Castelló, Adrián and Mayo, Rafael and Sala, Kevin and Beltran, Vicenç and Balaji, Pavan and Peña, Antonio J.},
abstractNote = {High-level parallel programming models (PMs) are becoming crucial in order to extract the computational power of current on-node multi-threaded parallelism. The most popular PMs, such as OpenMP or OmpSs, are directive-based: the complexity of the hardware is hidden by the underlying runtime system, improving coding productivity. The implementations of OpenMP usually rely on POSIX threads (pthreads), offering excellent performance for coarse-grained parallelism and a perfect match with the current hardware. OmpSs is a task oriented PM based on an ad hoc runtime solution called Nanos++; it is the precursor of the tasking parallelism in the OpenMP tasking specification. A recent trend in runtimes and applications points to leveraging massive on-node parallelism in conjunction with fine-grained and dynamic scheduling paradigms. In this paper we analyze the behavior of the OpenMP and OmpSs PMs on top of the recently emerged Generic Lightweight Threads (GLT) API. GLT exposses a common API for lightweight thread (LWT) libraries that offers the possibility of running the same application over different native LWT solutions. We describe the design details of those high-level PMs implemented on top of GLT and analyze different scenarios in order to assess where the use of LWTs may benefit application performance. Our work reveals those scenarios where LWTs overperform pthread-based solutions and compares the performance between an ad hoc solution and a generic implementation.},
doi = {10.1016/j.future.2018.02.016},
journal = {Future Generations Computer Systems},
number = C,
volume = 84,
place = {United States},
year = {2018},
month = {2}
}

Journal Article:
Free Publicly Available Full Text
Publisher's Version of Record

Save / Share: