An Event-Driven Multithreaded Dynamic Optimization Framework

  • Authors:
  • Weifeng Zhang;Brad Calder;Dean M. Tullsen

  • Affiliations:
  • Department of Computer Science and Engineering University of California, San Diego;Department of Computer Science and Engineering University of California, San Diego;Department of Computer Science and Engineering University of California, San Diego

  • Venue:
  • Proceedings of the 14th International Conference on Parallel Architectures and Compilation Techniques
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Dynamic optimization has the potential to adapt the programýs behavior at run-time to deliver performance improvements over static optimization. Dynamic optimization systems usually perform their optimization in series with the applicationýs execution. This incurs overhead which reduces the benefit of dynamic optimization, and prevents some aggressive optimizations from being performed. In this paper we propose a new dynamic optimization framework called Trident. Concurrent with the programýs execution, the framework uses hardware support to identify optimization opportunities, and uses spare threads on a multithreaded processor to perform dynamic optimizations for these optimization events. We evaluate the benefit of using Trident to guide code layout, basic compiler optimizations, and value specialization. Our results show that using Trident with these optimizations achieves an average 20% speedup, and is complementary with other memory latency tolerant techniques, such as prefetching.