DocumentCode
506150
Title
GTS: parallelization and vectorization of tight recurrences
Author
Ayguadé, E. ; Labarta, J. ; Torres, J. ; Borensztejn, P.
Author_Institution
Departament d´´Arquitectura de Computadors, Universitat Politÿcnica de Catalunya, Pau Gargallo, 5, 08028-Barcelona SPAIN
fYear
1989
fDate
12-17 Nov. 1989
Firstpage
531
Lastpage
539
Abstract
In this paper we present a new method for extracting the maximum parallelism or vector operations out of DO loops with tight recurrences using sequential programming languages. We have named the method Graph Traverse Scheduling (GTS). It is devised to produce code for shared memory multiprocessors or vector machines. When parallelizing, hardware support for fast synchronization is assumed. The method is presented for single nested loops including one or several recurrences and we show how parallel and vector code is generated. Based on the dependence graph of a loop, we first evaluate its parallelism and vector length of statements. Then we apply GTS to distribute loop iterations between tasks or to generate vector operations of a given length. When this method is applied for parallel code generation, dependencies not included in the sequential execution of each task must be explicitly synchronized. A method to minimize the number of explicit synchronizations is also presented. We also present how to compute the synchronization-free parallelism obtaining fully independent tasks. When GTS is applied for vector code generation, a sequential loop of vector operations is obtained.
Keywords
Computer languages; Concurrent computing; Data analysis; Data mining; Electronic mail; Hardware; Parallel processing; Processor scheduling; Testing; Tin;
fLanguage
English
Publisher
ieee
Conference_Titel
Supercomputing, 1989. Supercomputing '89. Proceedings of the 1989 ACM/IEEE Conference on
Conference_Location
Reno, NV, United States
Print_ISBN
0-89791-341-8
Type
conf
DOI
10.1145/76263.76322
Filename
5348985
Link To Document