Automatic Prefetching with Binary Code Rewriting in Object-Based DSMs

  • Authors:
  • Jean Christophe Beyler;Michael Klemm;Michael Philippsen;Philippe Clauss

  • Affiliations:
  • Université Louis-Pasteur de Strasbourg, ICPS-LSIIT, Pôle API, Bd Sébastian Brant, Illkirch, France 67400;University of Erlangen-Nuremberg, Computer Science Department 2, Erlangen, Germany 91058;University of Erlangen-Nuremberg, Computer Science Department 2, Erlangen, Germany 91058;Université Louis-Pasteur de Strasbourg, ICPS-LSIIT, Pôle API, Bd Sébastian Brant, Illkirch, France 67400

  • Venue:
  • Euro-Par '08 Proceedings of the 14th international Euro-Par conference on Parallel Processing
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Dynamic optimizers modify the binary code of programs at runtime by profiling and optimizing certain aspects of the execution. We present a completely software-based framework that dynamically optimizes programs for object-based Distributed Shared Memory (DSM) systems. In DSM systems, reducing the number of messages between nodes is crucial. Prefetching transfers data in advance from the storage node to the local node so that communication is minimized. Our framework uses a profiler and a dynamic binary rewriter that monitors the access behavior of the application and places prefetches where they are beneficial to speed up the application. In addition, we adapt the number of prefetches per request to best fit the application's behavior. Evaluation shows that the performance of our system is better than manual prefetching. The number of messages sent decreases by up to 89%. Performance gains of up to 73% can be observed on the benchmarks.