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

The implementation of a parallelizing compiler for loosely-coupled multiprocessor systems

Thesis/Dissertation ·
OSTI ID:6093812
Many aspects of loosely coupled multiprocessors have been widely covered in the literature. This thesis is concerned with some issues of a parallelizing compiler that restructures sequential programs. Three main issues addressed are basic-block parallelization, loop parallelization, and task synchronization. A flexible-granularity model is applied to a basic block and is shown to be a novel way of merging fine-grain operations into parallel tasks such that communication overhead is decreased while the parallelism obtained at the small grain level is retained. Several loop-parallelization techniques are also introduced: (1) message segmentation partitions a block of contiguous data to several optimal-size segments so as to maximize the overlap of computation and communication. (2) Compensating loop distribution places more iterations to processing elements that can start earlier, while the rest of the processing elements are receiving messages. (3) Heterogeneous loop scheduling improves the resource utilization for multiply nested loops. Simulation results indicate that such techniques show promise for automatic parellelization for a loosely coupled multiprocessor system.
Research Organization:
North Carolina Univ., Chapel Hill, NC (USA)
OSTI ID:
6093812
Country of Publication:
United States
Language:
English