User feedback in program parallelization is very important since often blind compilation may bring to mistakes in the generated code causing performance degradation. This is why it is necessary to provide the user with clear information about how the compiler parallelizes the program and, at the same time, an interface to control and assist program parallelization according to user feedback. To cope with this aspect we developed the HTG Visualization Tool (HTGviz), a graphic user interface for program parallelization based on a joint work of user knowledge and compiler techniques. HTGviz is implemented on top of Parafrase-2 parallelizing compiler, and Tcl/Tk is used as middleware integration language to implement graphical components. The interaction between the user and the compiler is carried out through the use of the Hierarchical Task Graph (HTG) program representation where task parallelism is represented by precedence relations (arcs) among task nodes. HTGviz offers the user an interface to navigate through the program HTG, providing him with information about data/control dependences and task precedences. It allows to tune task partitioning and parallelism by inserting OpenMP directives into the code based on graph manipulation facilities. HTGviz also guides the user through the process of generating valid and efficient parallel code for OpenMP applications.

HTGviz: A Graphic Tool for the Synthesis of Automatic and User-Driven Program Parallelization in the Compilation Process

M Giordano;M Mango Furnari
1999

Abstract

User feedback in program parallelization is very important since often blind compilation may bring to mistakes in the generated code causing performance degradation. This is why it is necessary to provide the user with clear information about how the compiler parallelizes the program and, at the same time, an interface to control and assist program parallelization according to user feedback. To cope with this aspect we developed the HTG Visualization Tool (HTGviz), a graphic user interface for program parallelization based on a joint work of user knowledge and compiler techniques. HTGviz is implemented on top of Parafrase-2 parallelizing compiler, and Tcl/Tk is used as middleware integration language to implement graphical components. The interaction between the user and the compiler is carried out through the use of the Hierarchical Task Graph (HTG) program representation where task parallelism is represented by precedence relations (arcs) among task nodes. HTGviz offers the user an interface to navigate through the program HTG, providing him with information about data/control dependences and task precedences. It allows to tune task partitioning and parallelism by inserting OpenMP directives into the code based on graph manipulation facilities. HTGviz also guides the user through the process of generating valid and efficient parallel code for OpenMP applications.
1999
Istituto di Scienze Applicate e Sistemi Intelligenti "Eduardo Caianiello" - ISASI
File in questo prodotto:
Non ci sono file associati a questo prodotto.

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.14243/130024
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 6
  • ???jsp.display-item.citation.isi??? ND
social impact