System Simulations
Trace-driven
- uses a trace of events, e.g., memory references
- retargetable across machine architectures
- efficient but validity may be limited
Program-driven
- simulation as the application executes
- application must be recompiled across different hardware platforms
- application is often “instrumented” to exploit specific architectural features.