Hiding Cache Miss Penalty Using Priority-based Execution for Embedded Processors

pdf ppt

Sanghyun Park, Aviral Shrivastava, and Yunheung Paek

DATE 2008: Proceedings of the International Conference on Design Automation and Test in Europe

Abstract: The contribution of memory latency to execution time continues to increase, and latency hiding mechanisms become ever more important for efficient processor design. While high-end processors can use elaborate techniques like multiple issue, out-of-order execution, speculative execution, value prediction etc. to tolerate high memory latencies, they are often not viable solutions for embedded processors, due to significant area, power and chip complexity overheads. This paper proposes a hardware-software cooperative approach, called priority-based execution to hide cache miss penalty for embedded processors. The compiler classifies the instructions into low-priority and highpriority instructions. The processor executes the high-priority instructions, but delays the execution of low priority instructions. They are executed on a cache miss to hide the cache miss penalty. We empirically evaluate our proposal on the Intel XScale compiler and microarchitecture. Experimental results on benchmarks from Multimedia, MediaBench, MiBench, and SPEC2000 demonstrate an average 17% performance improvements, hiding 75% cache miss penalty.


Compiler and Microarchitecture Lab,
Department of Computer Science and Engineering,
School of Computing and Informatics,
Arizona State University, Tempe, AZ 85281.
Software Optimization And Restructuring Group,
School of Electrical Engineering,
Seoul National University, South Korea..