Title :
Context optimization for SIMD execution
Author :
Kennedy, Ken ; Roth, Gerald
Author_Institution :
Dept. of Comput. Sci., Rice Univ., Houston, TX, USA
Abstract :
One issue that SIMD compilers must address is generating code to change the machine context, i.e., disabling processors not involved in the current computation. We present two compiler optimizations that reduce the cost of context changes. The first optimization, context partitioning, reorders the Fortran 90 code so that as subgrid loops are generated, as many statements as possible that require the same context are placed in the same loop nest. The second optimization, context splitting, splits the iteration space of the subgrid loops into sets that have invariant contexts. This allows us to hoist the code that sets the machine context out of the subgrid loops
Keywords :
FORTRAN; parallel architectures; parallel programming; program compilers; Fortran 90 code; SIMD compilers; SIMD execution; compiler optimizations; context changes; context optimization; context partitioning; context splitting; invariant contexts; iteration space; loop nest; machine context; subgrid loops; Arithmetic; Broadcasting; Computer architecture; Computer science; Concurrent computing; Cost function; Counting circuits; Distributed computing; Iron; Optimizing compilers;
Conference_Titel :
Scalable High-Performance Computing Conference, 1994., Proceedings of the
Conference_Location :
Knoxville, TN
Print_ISBN :
0-8186-5680-8
DOI :
10.1109/SHPCC.1994.296677