Title :
Adaptive loop transformations for scientific programs
Author :
Gupta, Rajiv ; Bodik, Rastislav
Author_Institution :
Dept. of Comput. Sci., Pittsburgh Univ., PA, USA
Abstract :
To facilitate the efficient execution of scientific programs, parallelizing compilers apply a wide range of loop transformations. In some situations it may not be possible to determine the applicability and usefulness of the transformations at compile time. We develop adaptive versions of various loop transformations which lend themselves to efficient application at run time. instead of explicitly applying a transformation at compile time, we generate adaptive code which is able to behave like the transformed code, if so desired, at run time. Therefore an adaptive program can be viewed as expressing multiple ways of executing a program. The selection of the particular execution is based upon run time information. Adaptive programs offer a more practical and powerful alternative to multiversion programs
Keywords :
natural sciences; natural sciences computing; parallel programming; parallelising compilers; resource allocation; scheduling; adaptive code; adaptive loop transformations; adaptive program; adaptive programs; adaptive versions; compiler directed scheduling; data locality; efficient execution; load balancing; multiversion programs; parallelizing compilers; run time information; scientific programs; Adaptive coding; Cloning; Computer science; Costs; Load management; Parallel processing; Performance analysis; Runtime;
Conference_Titel :
Parallel and Distributed Processing, 1995. Proceedings. Seventh IEEE Symposium on
Conference_Location :
San Antonio, TX
Print_ISBN :
0-81867195-5
DOI :
10.1109/SPDP.1995.530707