Parallel and Distributed Processing Symposium, International
Download PDF

Abstract

Data cache misses reduce the performance of wide-issue processors by stalling the data supply to the processor. It is especially worse in the DSM environment. Prefetching data for the critical data address misses is one way to tolerate the cache miss latencies. But current applications with irregular access patterns make it difficult to prefetch data sufficiently early to mask large cache miss latencies, especially in multithreadal applications. To complement prefetching in a multithreaded environment, this paper proposes an approach to prefetch data addresses by a priority-driven method. The method introduced in this paper is a novel approach for dynamically identifying and precomputing the data addresses of the instructions marked as in a higher priority critical path of an application. The critical path can be identified at compile-time or run-time. A separate engine calculates the data addresses of the identified instructions in the critical path and prefetches early enough, the data that will be used in the next critical instruction. Preliminary results show that a priority-driven prefetching is useful. It reduces the completion time of an application significantly. The approach improved the overall performance in three experiments conducted with Active Prefetching, over traditional prefetching, especially in the Matrix-Matrix multiplication, in our simulator.
Like what you’re reading?
Already a member?
Get this article FREE with a new membership!

Related Articles