Implementation of GTS

Graph Traverse Scheduling, GTS [ALTB89], was developed as a technique suitable for parallelizing DO loops with cycles on their dependence graph, but actually, GTS is a generalization of many loop restructuring techniques. The improvements achieved with its application in front of other techniques ar...

Descripción completa

Guardado en:
Detalles Bibliográficos
Autores principales: Barrado, C., Labarta, J., Borensztejn, P., Maritsas D., Theodoridis S., Halatsis C., Philokyprou G., Commision of the European Union; et al.; General Secretariat of Research and Technology; Greek Ministry of Cultural Affairs; Intracom; Ministry of Education
Formato: SER
Materias:
Acceso en línea:http://hdl.handle.net/20.500.12110/paper_03029743_v817LNCS_n_p555_Barrado
Aporte de:
Descripción
Sumario:Graph Traverse Scheduling, GTS [ALTB89], was developed as a technique suitable for parallelizing DO loops with cycles on their dependence graph, but actually, GTS is a generalization of many loop restructuring techniques. The improvements achieved with its application in front of other techniques are the reduction of synchronizations, the introduction of scalar optimizations and the better use of the memory hierarchy. The purpose of this work has been the implementation of this new technique for a particular existing shared-memory multiprocessor and its integration on a source-to-source restructuring compiler. We studied the limitations imposed by the architecture to the technique and modified it in order to adapt the generated parallel code to the architecture. Finally, we measured the improvements of the new scheduling comparing the execution time of some example loops obtained by the commercial parallelizer with the execution time obtained by GTS. © Springer-Verlag Berlin Heidelberg 1994.