Accurate memory signatures and synthetic address traces for hpc applications (2008)
| Venue: | In ICS ’08: Proceedings of the 22nd Annual International Conference on Supercomputing |
| Citations: | 1 - 0 self |
BibTeX
@INPROCEEDINGS{Weinberg08accuratememory,
author = {Jonathan Weinberg and Allan E. Snavely},
title = {Accurate memory signatures and synthetic address traces for hpc applications},
booktitle = {In ICS ’08: Proceedings of the 22nd Annual International Conference on Supercomputing},
year = {2008},
pages = {36--45},
publisher = {ACM}
}
OpenURL
Abstract
Though the performance of many scientific codes is dominated by memory behavior, our ability to describe, capture, compare, and recreate that behavior is quite limited. This inability underlies much of the complexity in the field of performance analysis: it is fundamentally difficult to relate benchmarks and applications or use realistic workloads to guide system design and procurement. An observable, reproducible, and machine-independent memory characterization is needed. The Chameleon framework is a software suite that includes tools to capture a concise memory signature from any application and produce synthetic memory address traces that mimic that signature. By simultaneously modeling spatial and temporal locality, Chameleon produces uniquely accurate, general-purpose synthetic traces. We demonstrate that the cache hit rates generated by each synthetic trace are nearly identical to those of the application it targets on dozens of memory hierarchies representing many of today’s commercial offerings. We apply the framework to high-performance computing (HPC) by leveraging sampling techniques to capture the memory signatures of full-scale, parallel applications with only a 5x slowdown. The overall result is therefore a concise, observable, and machine-independent representation of the memory requirements of full-scale applications that can be tractably captured and accurately mimicked. Categories and Subject Descriptors D.2.8 [Software Engineering]: Metrics—complexity measures, performance measures







