Some Efficient Techniques for Simulating Memory

Magnusson, Peter S. and Werner, Bengt (1994) Some Efficient Techniques for Simulating Memory. [SICS Report]



We describe novel techniques used for efficient simulation of memory in SimICS, an instruction level simulator developed at SICS. The design has focused on efficiently supporting the simulation of multiprocessors, analyzing complex memory hierarchies and running large binaries with a mixture of system-level and user-level code. A software caching mechanism (the Simulator Translation Cache, STC) improves the performance of interpreted memory operations by reducing the number of calls to complex memory simulation code. A lazy memory allocation scheme reduces the size of the simulator process. A well-defined internal interface to generic memory simulation simplifies user extensions. Leveraging on a flexible interpreter based on threaded code allows runtime selection of statistics gathering, memory profiling, and cache simulation with low overhead. The result is a memory simulation that supports a range of features for use in computer architecture research, program profiling, and debugging. (NOTE: A later version was published in the 28th Annual Simulation Symposium)

Item Type:SICS Report
Uncontrolled Keywords:Interpreter, Simulator, Multiprocessor, SimICS, Memory Simulation,Memory Hierarchy, Cache Simulation
ID Code:2136
Deposited By:Vicki Carleson
Deposited On:22 Oct 2007
Last Modified:18 Nov 2009 16:00

Repository Staff Only: item control page