Delphi: Predition-based Page Prefetching to Improve the Performance of Shared Virtual Memory Systems
William Evan Speight, Martin Burtscher · Parallel and Distributed Processing Techniques and Applications · 2002
Software distributed shared memory (SDSM) systems traditionally exhibit poor performance on applications with significant fine-grain or false sharing. Techniques such as relaxedconsistency models and multiple -writers protocols improve the performance of SDSM systems significantly, but their performance still lags that of hardware shared memory implementations. This paper describes Delphi, a system that borrows techniques from microarchitectural research on value prediction and applies them to software distributed shared memory. We run a small software predictor on each node in the Delphi system to predict which virtual pages will be needed in the future. We use the predictions to prefetch pages in order to reduce the number of accesses to invalid data and thereby reduce expensive network accesses. Experimental results show that Delphi is able to reduce the number of read misses to virtual pages by up to 62% on a set of well-known scientific benchmarks with minimal runtime overhead in extra processing and memory requirements. This translates into a 14% reduction in execution time over a comparable base system that does not employ prediction techniques.