Modern architecture research relies heavily on detailed pipeline simulation. Simulating the full execution of an industry standard benchmark can take weeks to months to complete. To address this issue researchers have recently proposed using Simulation Points (SimPoints) to increase the efficiency and accuracy of simulation. SimPoints are a small subset of execution intervals that are representative of a program's phases, so that when combined they accurately represent the complete execution of the program. These SimPoints are found using clustering techniques based on the structure of the executed code. The prior work on SimPoints assumed a somewhat advanced simulation environment that supported check-points, had perfect warm-up ability, and focused only on simulating single threaded architectures. In this research we explore what happens when you break these assumptions and provide techniques that are capable of dealing with more complex simulation environments. We focus on environments that have the ability to fast-forward, but to not checkpoint, and we extend the use of SimPoints to multi-threaded architectures. We present results comparing our improved SimPoint techniques with past SimPoint work and in addition provide a comparison to Random Sampling.
The authors of these documents have submitted their reports to this technical report series for the purpose of non-commercial dissemination of scientific work. The reports are copyrighted by the authors, and their existence in electronic format does not imply that the authors have relinquished any rights. You may copy a report for scholarly, non-commercial purposes, such as research or instruction, provided that you agree to respect the author's copyright. For information concerning the use of this document for other than research or instructional purposes, contact the authors. Other information concerning this technical report series can be obtained from the Computer Science and Engineering Department at the University of California at San Diego, firstname.lastname@example.org.
[ Search ]