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

Title: Extending Automatic Parallelization to Optimize High-Level Abstractions for Multicore

Abstract

Automatic introduction of OpenMP for sequential applications has attracted significant attention recently because of the proliferation of multicore processors and the simplicity of using OpenMP to express parallelism for shared-memory systems. However, most previous research has only focused on C and Fortran applications operating on primitive data types. C++ applications using high-level abstractions, such as STL containers and complex user-defined types, are largely ignored due to the lack of research compilers that are readily able to recognize high-level object-oriented abstractions and leverage their associated semantics. In this paper, we automatically parallelize C++ applications using ROSE, a multiple-language source-to-source compiler infrastructure which preserves the high-level abstractions and gives us access to their semantics. Several representative parallelization candidate kernels are used to explore semantic-aware parallelization strategies for high-level abstractions, combined with extended compiler analyses. Those kernels include an array-base computation loop, a loop with task-level parallelism, and a domain-specific tree traversal. Our work extends the applicability of automatic parallelization to modern applications using high-level abstractions and exposes more opportunities to take advantage of multicore processors.

Authors:
; ; ;
Publication Date:
Research Org.:
Lawrence Livermore National Lab. (LLNL), Livermore, CA (United States)
Sponsoring Org.:
USDOE
OSTI Identifier:
957178
Report Number(s):
LLNL-CONF-409406
TRN: US201007%%598
DOE Contract Number:  
W-7405-ENG-48
Resource Type:
Conference
Resource Relation:
Conference: Presented at: International Workshop on OpenMP, Dresden, Germany, Jun 03 - Jun 05, 2009
Country of Publication:
United States
Language:
English
Subject:
99 GENERAL AND MISCELLANEOUS; CONTAINERS; FORTRAN; PROLIFERATION

Citation Formats

Liao, C, Quinlan, D J, Willcock, J J, and Panas, T. Extending Automatic Parallelization to Optimize High-Level Abstractions for Multicore. United States: N. p., 2008. Web.
Liao, C, Quinlan, D J, Willcock, J J, & Panas, T. Extending Automatic Parallelization to Optimize High-Level Abstractions for Multicore. United States.
Liao, C, Quinlan, D J, Willcock, J J, and Panas, T. Fri . "Extending Automatic Parallelization to Optimize High-Level Abstractions for Multicore". United States. https://www.osti.gov/servlets/purl/957178.
@article{osti_957178,
title = {Extending Automatic Parallelization to Optimize High-Level Abstractions for Multicore},
author = {Liao, C and Quinlan, D J and Willcock, J J and Panas, T},
abstractNote = {Automatic introduction of OpenMP for sequential applications has attracted significant attention recently because of the proliferation of multicore processors and the simplicity of using OpenMP to express parallelism for shared-memory systems. However, most previous research has only focused on C and Fortran applications operating on primitive data types. C++ applications using high-level abstractions, such as STL containers and complex user-defined types, are largely ignored due to the lack of research compilers that are readily able to recognize high-level object-oriented abstractions and leverage their associated semantics. In this paper, we automatically parallelize C++ applications using ROSE, a multiple-language source-to-source compiler infrastructure which preserves the high-level abstractions and gives us access to their semantics. Several representative parallelization candidate kernels are used to explore semantic-aware parallelization strategies for high-level abstractions, combined with extended compiler analyses. Those kernels include an array-base computation loop, a loop with task-level parallelism, and a domain-specific tree traversal. Our work extends the applicability of automatic parallelization to modern applications using high-level abstractions and exposes more opportunities to take advantage of multicore processors.},
doi = {},
journal = {},
number = ,
volume = ,
place = {United States},
year = {Fri Dec 12 00:00:00 EST 2008},
month = {Fri Dec 12 00:00:00 EST 2008}
}

Conference:
Other availability
Please see Document Availability for additional information on obtaining the full-text document. Library patrons may search WorldCat to identify libraries that hold this conference proceeding.

Save / Share: