Sampled Simulation of Multi-Threaded Applications

From Sniper

Jump to: navigation, search

Trevor E. Carlson, Wim Heirman, Lieven Eeckhout

Best Paper Award at IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS 2013)



Sampling is a well-known workload reduction technique that allows one to speed up architectural simulation while accurately predicting performance. Previous sampling methods have been shown to accurately predict single-threaded application runtime based on its overall IPC. However, these previous approaches are unsuitable for general multi-threaded applications, for which IPC is not a good proxy for runtime. Additionally, we find that issues such as application periodicity and inter-thread synchronization play a significant role in determining how best to sample these applications.

The proposed multi-threaded application sampling methodology is able to derive an effective sampling strategy for candidate applications using architecture-independent metrics. Using this methodology, large input sets can now be simulated which would otherwise be infeasible, allowing for more accurate conclusions to be made than from studies using scaled-down input sets. Through the use of the proposed methodology, we can simulate less than 10% of the total application runtime in detail. On the SPEComp, NPB and PARSEC benchmarks, running on an 8-core simulated system, we achieve an average absolute error of 3.5%.

Full text

Full paper PDF



Bibtex entry

  author = {Trevor E. Carlson and Wim Heirman and Lieven Eeckhout},
  title = {Sampled Simulation of Multi-Threaded Applications},
  booktitle = {International Symposium on Performance Analysis of Systems and Software (ISPASS)},
  pages = {2-12},
  year = {2013},
  month = apr
Personal tools