A tool for translating sequential source code to parallel code written in C++ and openACC

  • K. Alsubhi
  • , F. Alsolami
  • , A. Algarni
  • , E. Albassam
  • , M. Khemakhem
  • , F. Eassa
  • , K. Jambi
  • , M. Usman Ashraf

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

9 Scopus citations

Abstract

In this paper, we introduce a translation tool that translates any sequential C++ source code into parallel source code written in C++ and OpenACC programming model. The tool generates different types of dependency graphs: class, method, loop, and block-of-statements graphs. The class and method dependency graphs are created for the sequential code, and the loop and block-of-statements dependency graphs are created for each method. From the class dependency graph, the dependency analyser identifies the independent classes, where the objects of the independent classes can run in parallel, and from the method dependency graph, the method analyser detects the methods that can run in parallel. For each block, the analyser detects the statements that run in parallel, where there is no data dependency between statements, and the loop analyser detects the type of parallelism in the loop-block: parallel statements, pipeline, or data partitions.

Original languageEnglish
Title of host publication16th ACS/IEEE International Conference on Computer Systems and Applications, AICCSA 2019
PublisherIEEE Computer Society
ISBN (Electronic)9781728150529
DOIs
StatePublished - Nov 2019
Externally publishedYes
Event16th ACS/IEEE International Conference on Computer Systems and Applications, AICCSA 2019 - Abu Dhabi, United Arab Emirates
Duration: 3 Nov 20197 Nov 2019

Publication series

NameProceedings of IEEE/ACS International Conference on Computer Systems and Applications, AICCSA
Volume2019-November
ISSN (Print)2161-5322
ISSN (Electronic)2161-5330

Conference

Conference16th ACS/IEEE International Conference on Computer Systems and Applications, AICCSA 2019
Country/TerritoryUnited Arab Emirates
CityAbu Dhabi
Period3/11/197/11/19

Bibliographical note

Publisher Copyright:
© 2019 IEEE.

Keywords

  • Automatic code translation
  • C++
  • OpenACC
  • Parallel code
  • Sequential Code Translation

ASJC Scopus subject areas

  • Control and Systems Engineering
  • Signal Processing
  • Hardware and Architecture
  • Computer Science Applications
  • Computer Networks and Communications
  • Electrical and Electronic Engineering

Fingerprint

Dive into the research topics of 'A tool for translating sequential source code to parallel code written in C++ and openACC'. Together they form a unique fingerprint.

Cite this