A Scratch-Pad Memory Aware Dynamic Loop Scheduling Algorithm

  • Authors:
  • Ozcan Ozturk;Mahmut Kandemir;Sri Hari Krishna Narayanan

  • Affiliations:
  • -;-;-

  • Venue:
  • ISQED '08 Proceedings of the 9th international symposium on Quality Electronic Design
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Executing array based applications on a chip multiprocessor requires effective loop parallelization techniques. One of the critical issues that need to be tackled by an optimizing compiler in this context is loop scheduling, which distributes the iterations of a loop to be executed in parallel across the available processors. Most of the existing work in this area targets cache based execution platforms. In comparison, this paper proposes the first dynamic loop scheduler, to our knowledge, that targets scratch-pad memory (SPM) based chip multiprocessors, and presents an experimental evaluation of it. The main idea behind our approach is to identify the set of loop iterations that access the SPM and those that do not. Thisinformation is exploited at runtime to balance the loads of the processors involved in executing the loop nest at hand. Therefore, the proposed dynamic scheduler takes advantage of the SPM in performing the loop iteration-to-processor mapping. Our experimental evaluation with eight array/loop intensive applications reveals that the proposed scheduler is very effective in practice and brings between 13.7% and 41.7% performance savings over a static loop scheduling scheme, which is also tested in our experiments.