An Accurate Prefetch Technique for Dynamic Paging Behaviour for Software Distributed Shared Memory

2012 
Page-based software Distributed Shared Memory (sDSM) systems suffer from their high memory consistency costs. Utilizing an effective prefetch technique can reduce this overhead. However, it is hard to predict accurately for applications exhibiting dynamic memory accessing and paging behavior. In this paper, we use Intel Cluster OpenMP (CLOMP) to study this problem. First, we present a stride augmented run-length encoding (sRLE) method to reconstruct series of numbers into 2D rectangles which facilitates a more accurate paging behavior analysis. Historical page miss records of OpenMP parallel and sequential regions are reconstructed and compressed by sRLE. Second, we design and implement a dynamic page prefetch technique (DReP) based on these reconstructed records to predict and issue prefetches. DReP and its implementation are evaluated through simulations and experiments. The simulation results show that DReP significantly improves the efficiency (~34%) and coverage (~47%) of existing prefetch techniques. Moreover, the experimental results show that DReP significantly reduces the memory consistency costs of CLOMP by 86% for extreme false sharing scenario. With the assistance of sRLE, DReP reduces ~45% and ~38% memory consistency costs for LINPACK and NPB-OMP benchmarks on GigE and DDR IB networks respectively. An detailed breakdown analysis shows that the introduced software overhead of DReP is negligible (~2%).
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    22
    References
    0
    Citations
    NaN
    KQI
    []