Sampled Simulation of Multi-Threaded Applications

From Sniper
Jump to navigation Jump to 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