International Symposium on Code Generation and Optimization (CGO'03)
Improving Quasi-Dynamic Schedules through Region Slip
San Francisco, California
March 23-March 26
ISBN: 0-7695-1913-X
Modern processors perform dynamic scheduling to achieve better utilization of execution resources. A schedule created at run-time is often better than one created at compile-time as it can dynamically adapt to specific events encountered at execution-time. In this paper, we examine some fundamental impediments to effective static scheduling. More specifically, we examine the question of why schedules generated quasi-dynamically by a low-level run-time optimizer and executed on a statically scheduled machine perform worse than using a dynamically-scheduled approach. We observe that such schedules suffer because of region boundaries and a skewed distribution of parallelism towards the beginning of a region. To overcome these limitations, we investigate a new concept, region slip, in which the schedules of different statically-scheduled regions can be interleaved in the processor issue queue to reduce the region boundary effects that cause empty issue slots.
Citation:
Francesco Spadini, Brian Fahs, Sanjay Patel, Steven S. Lumetta, "Improving Quasi-Dynamic Schedules through Region Slip," cgo, pp.149, International Symposium on Code Generation and Optimization (CGO'03), 2003