Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

Loop coalescing: A compiler transformation for parallel machines

Conference ·
OSTI ID:5642685
In this paper we discuss a compiler transformation called loop coalescing which can be used to reduce run-time overhead and simplify the loop scheduling problem. Parallel loops account for the greatest amount of parallelism in numerical programs. Executing nested loops in parallel with low run-time overhead is thus very important for achieving high performance on parallel computers. Loop coalescing is a restructuring technique that transforms several types of nested parallel loops into a single loop. As a result of this transformation the loop scheduling problem becomes simple. Moreover the amount of synchronization (i.e., run-time overhead) associated with the parallel execution of loops is reduced sharply through loop coalescing. Several examples are presented and the general transformation is discussed in detail. We also give an example of the application of loop coalescing to loop scheduling. 23 refs., 10 figs.
Research Organization:
Illinois Univ., Urbana (USA)
DOE Contract Number:
FG02-85ER25001
OSTI ID:
5642685
Report Number(s):
DOE/ER/25001-64; CONF-870831-7; ON: DE88003571
Country of Publication:
United States
Language:
English