Modern architecture research relies heavily on detailed pipeline
simulation. Simulating the full execution of an industry standard benchmark
can take weeks to months. Statistical sampling and techniques like SimPoint
that pick small sets of execution samples have been shown to provide accurate
results while significantly reducing simulation time. The inefficiencies in
sampling are (a) needing the correct memory image to execute the sample, and
(b) needing to having warm architecture state when simulating the sample. In
this paper we examine efficient Sampling Startup techniques for representing
the correct memory image during simulation, and for dealing with warmup.
Representing the correct memory image ensures the memory values consumed during
the sample's simulation are correct. Warmup techniques focus on reducing error
due to the architecture state not being fully representative of the complete
execution that proceeds the sample to be simulated. This paper presents
several Sampling Startup techniques and compares them against previously
proposed techniques for both uniprocessor and simultaneous multithreading
architecture simulation.
Pre-2018 CSE ID: CS2004-0803