You should read the class Newsgroup regularly. We strongly encourage active participation on cmu.cs.class.cs740. It is for clarification and general discussion, particularly among class members. If the following addresses are not accessible, use your favorite newsgroup reader.
We ask that students obey the reasonable person principle, e.g., please refrain from insulting anyone on the bulletin boards.
The SimpleScalar tool set is a software system infrastructure used to simulate a range of modern processors and systems. The tool set includes sample simulators ranging from a fast functional simulator to a detailed, dynamically scheduled processor model that supports non-blocking caches, speculative execution, and state-of-the-art branch prediction. More information can be found at SimpleScalar LLC.
SMARTSim adds the SMARTS framework to the detailed cycle-accurate processor simulator sim-outorder. SMARTSim is based on SimpleScalar 3.0c by Todd Austin and Doug Burger, and includes the WATTCH enhancements from David Brooks. The SMARTS framework adds sampling capabilities to sim-outorder, so that only a fraction of each benchmark is simulated using the full cycle-accurate processor model. This allows for fast simulation of entire applications without sacrificing accuracy. The version distributed here runs alpha executables, while the simulator itself runs on x86/Linux platforms. This distribution fixes bugs in the original SimpleScalar 3.0c, so it is advisable that you use that one instead of the original, even if you do not plan to use the SMARTS framework. If you do plan to use sampling, however, suggested sample unit sizes for the SPEC 2000 suite for a 99.7% +/- 3% confidence target are given in the README.SMARTSim file.
The SMARTS technique is described in detail in:
R. Wunderlich, T. Wenisch, B. Falsafi, and J. Hoe, "SMARTS: Accelerating Microarchitecture Simulation via Rigorous Statistical Sampling", Appearing in the Proceedings of the 30th Annual International Symposium on Computer Architecture, 2003.
A copy of this paper has been included in this distribution as SMARTS.pdf.
How to obtain the simulator:
ATOM is a performance analysis tool running on ALPHA. It modifies object files by adding user-defined assembly instructions at predefined points (e.g. at the beginning of loops). ATOM provides the machinery to instrument an application program and allows the tool designer to specify the instrumentation and analysis details. The method of communication between the application program and the analysis routines is a simple procedure call. ATOM takes as input a specially linked application program, and source files describing where instrumentation is to be inserted, and the implementation of the analysis routines.
ATOM has been installed on the alpha cluster. On-line documentation is also available: