Parallelizing compiler by object oriented design

Y. Omori, K. Joe, Akira Fukuda

Research output: Contribution to journalConference article

1 Citation (Scopus)

Abstract

Applying conventional compiler design methodology to a parallelizing compiler, its internal data structures tend to get too complicated quickly. Thus, we introduce object oriented design from the problem analysis stage and achieve the following improvements: 1) consistent modeling from the theory to the implementation, 2) reduced program size through improved reusability based on better class design methodology, and 3) flexible coding through a stub class for parallelization. We extract objects based on stream and thus clarify similarities and differences to the conventional design schemes. Then, we show the framework of the internal classes used in our parallelizing compiler which enhances design-level reusability in C++ implementation of the compiler. Furthermore, we provide a virtual class to be used as a unit of MIMD style parallel execution and make it a common representation among different parallelization algorithms. Finally, we compare our design against SUIF, which also uses C++, and show the improvements on the design classes.

Original languageEnglish
Pages (from-to)232-239
Number of pages8
JournalProceedings - IEEE Computer Society's International Computer Software and Applications Conference
Publication statusPublished - Jan 1 1997
Externally publishedYes

All Science Journal Classification (ASJC) codes

  • Software
  • Computer Science Applications

Fingerprint Dive into the research topics of 'Parallelizing compiler by object oriented design'. Together they form a unique fingerprint.

  • Cite this