Energy Aware Loop Scheduling for High Performance Multi-Module Memory
The speed gap between processor and memory is the major bottleneck for modern computing systems. Many modern processors, such as the CELL processor, employ multi-core, multimodule architecture to hide memory access latency. However, making effective use of multiple memory modules remains difficult, considering the combined effect of performance and energy requirements. This paper studies the scheduling and assignment problem that optimize both energy and performance. An efficient algorithm, EALSPP (Energy Aware Loop Scheduling with Prefetching and Partition), is proposed. The algorithm attempts to maximize energy saving while hiding memory latency with the combination of loop scheduling, data prefetching, memory partition, and heterogeneous memory module type assignment. Experimental results demonstrate the effectiveness of our approach.