Semantic-Aware Automatic Parallelization of Modern Applications Using High-Level Abstractions

Liao, Chunhua; Quinlan, Daniel; Willcock, Jeremiah; Panas, Thomas
October 2010
International Journal of Parallel Programming;Oct2010, Vol. 38 Issue 5/6, p361
Academic Journal
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. Modern applications using high-level abstractions, such as C++ STL containers and complex user-defined class 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 use a source-to-source compiler infrastructure, ROSE, to explore compiler techniques to recognize high-level abstractions and to exploit their semantics for automatic parallelization. Several representative parallelization candidate kernels are used to study semantic-aware parallelization strategies for high-level abstractions, combined with extended compiler analyses. Preliminary results have shown that semantics of abstractions can help extend the applicability of automatic parallelization to modern applications and expose more opportunities to take advantage of multicore processors.


Related Articles

  • SunSoft aims tool set at Unix variants. Leach, Norvin // PC Week;8/29/94, Vol. 11 Issue 34, p34 

    Reports on the porting of SunSoft Inc.'s Solaris-based C++ and FORTRAN tool sets to other Unix variants. Translation of WorkShop development environment to Hewlett-Packard Co.'s HP/UX; Components of the WorkShop; List price; Contact information.

  • Novell endorses 5 third-party tools to boost NLMs. Leach, Norvin; Pallatto, John // PC Week;1/25/93, Vol. 10 Issue 3, p69 

    Reports on Novell Inc.'s promotion of five NetWare-enabled, third-party development tools to entice developers of NetWare Loadable Modules. FORTRAN and C++ compilers frmo Watcom International Corp.; C++ compiler from Draiken Software Inc.; Application connectivity kit from Symbiotics Inc. and...

  • Abstract Data Type Development and Implementation: An Example. Ford, Ray; Miller, Keith // IEEE Transactions on Software Engineering;Oct85, Vol. 11 Issue 10, p1033 

    Data abstraction is an effective tool in the design of complex systems, and the representation independence it provides is a key factor in the maintenance and adaptation of software systems. This paper describes a system development methodology based on the development of hierarchies of abstract...

  • Relational concurrent refinement part II: Internal operations and outputs. Boiten, Eerke; Derrick, John; Schellhorn, Gerhard // Formal Aspects of Computing;Feb2009, Vol. 21 Issue 1/2, p65 

    Two styles of description arise naturally in formal specification: state-based and behavioural. In state-based notations, a system is characterised by a collection of variables, and their values determine which actions may occur throughout a system history. Behavioural specifications describe...

  • Using Rose and Compass for Authentication. White, Greg // Proceedings of the Institute of Nuclear Materials Management Ann;2009, p1 

    Many recent non-proliferation software projects include a software authentication component. In this context, "authentication" is defined as determining that a software package performs only its intended purpose and performs that purpose correctly and reliably over many years. In addition to...

  • Abstraction and Idealization in the Formal Verification of Software Systems. Angius, Nicola // Minds & Machines;May2013, Vol. 23 Issue 2, p211 

    Questions concerning the epistemological status of computer science are, in this paper, answered from the point of view of the formal verification framework. State space reduction techniques adopted to simplify computational models in model checking are analysed in terms of Aristotelian...

  • High Performance Color Image Processing in Multicore CPU using MFC Multithreading. Kamalakannan, Anandhanarayanan; Rajamanickam, Govindaraj // International Journal of Advanced Computer Science & Application;Dec2013, Vol. 4 Issue 12, p42 

    Image processing is an engineering field where stored image data is readily available for parallel processing. Basically data processing algorithms developed in sequential approach are not capable of harnessing the computing power of individual cores present in a single-chip multicore processor....

  • An Algorithm Template for Domain-Based Parallel Irregular Algorithms. Gonz├ílez, Carlos; Fraguela, Basilio // International Journal of Parallel Programming;Dec2014, Vol. 42 Issue 6, p948 

    The parallelization of irregular algorithms has not been as widely studied as the one of regular codes. In particular, while there are many proposals of parallel skeletons and libraries very well suited to regular algorithms, this is not the case for irregular ones. This is probably due to the...

  • Automatic Fortran to C++ conversion with FABLE. Grosse-Kunstlev, Ralf W; Terwilliger, Thomas C; Sauter, Nicholas K; Adams, Paul D // Source Code for Biology & Medicine;2012, Vol. 7 Issue 1, p5 

    Background: In scientific computing, Fortran was the dominant implementation language throughout most of the second part of the 20th century. The many tools accumulated during this time have been difficult to integrate with modern software, which is now dominated by object-oriented languages....


Read the Article


Sorry, but this item is not currently available from your library.

Try another library?
Sign out of this library

Other Topics