Help on the SimpleScalar Visualizer

Topics

Introduction

The SimpleScalar Visualizer is an easy-to-use graphical front-end to the SimpleScalar simulation engine.  Although the popular command-line version of SimpleScalar generates large quantities of data and useful summaries, the Visualizer enables you to view real-time changes to the data and study dynamic behavior.

Features of the SimpleScalar Visualizer include:

top...

Getting Started With SimpleScalar Visualizer

Because the SimpleScalar Visualizer is an X windows application built with a SPARC compiler, you will need to access a Solaris workstation to run the visualizer.

If you are sitting at the console:

  1. Log into the workstation and start X windows.
  2. Ensure that your workstation can execute an arbitrary X client from within a command line shell.  For example, try running xclock to ensure that the application window is properly displayed.
  3. Run the the SimpleScalar Visualizer application.  For example, execute:
      % /projects/cart/projects/visualization/ss-viz/ss-viz

If you are accessing the workstation remotely:

  1. Ensure that your local client will allow the workstation to display the application on your client, typically by executing the xhost command.  For example:
    % /usr/openwin/bin/xhost <my_host>
  2. Ensure that your DISPLAY variable is set correctly.  For example, try running xclock to ensure that the application window is properly displayed.
  3. Run the SimpleScalar Visualizer application.  For example, execute:
         % /projects/cart/projects/visualization/ss-viz/ss-viz
Note: The first time you execute the SimpleScalar Visualizer, the application will create a .ss-viz directory in your $HOME directory to store configuration information.  You can remove this directory at any time when done with the application.

See also Reading Program Output for information about the output messages from the application to the console.

top...

Loading Benchmarks

When started, the SimpleScalar Visualizer loads the SPEC95 COMPRESS benchmark, ready to run.

To load a different benchmark:

  1. Click on the Benchmarks menu item and select the desired benchmark.
  2. Press [OK] in the pop-up confirmation window.
Note: When loading a benchmark, the SimpleScalar Visualizer completely restarts itself with the new settings.  Hence, the application window will momentarily disappear as the application restarts.

To load a benchmark that isn't listed on the menu list:

  1. Select the Load Benchmark... menu item.
  2. Type the complete file path to the benchmark in the Benchmark Path: field.
  3. Type the complete file path to the benchmark input data in the Input Path: field.
  4. Press the [OK] button
A dialog will appear to confirm your choice.  Press [OK] to re-start the application with the new benchmark.

top...

Controlling Program Execution

Executing programs on the SimpleScalar Visualizer is easy: Push one of the arrow buttons in the SimpleScalar Visualizer toolbar: To stop execution when the program is running: Note that the units are updated only when the program has paused.

You can use the the Number of cycles per step: field to move to a precise cycle of the benchmark's execution.

For example, if the program is paused at cycle 5,000 and you'd like to examine the machine state at cycle 45,000, then you can enter 40000 into the field and press the double-arrow button once.  

Or if you want to examine the simulator's behavior at cycle 104538, then you can enter that value in the field before starting the execution and then press the double-arrow button.

top...

Displaying Execution Graphs

The SimpleScalar Visualizer offers four types of graphs: To display these graphs individually, press the Graphs menu item and select the desired graph.

These graphs will be updated continuously during benchmark execution.  You may need to move the windows around the display to view the dynamic updates.

You can close the graph windows individually by pressing the Close button in each window, or you can close all the graph windows simultaneously by selecting the Close Graphs menu item from the Graphs menu.

If you minimize the SimpleScalar Visualizer window, any open graph window will likewise be minimized.

See also Configuring Graphical Output for more information on graph options.
 

top...

Displaying Execution Statistics

top...

Configuring Graphical Output

Press the Configure... button on a graph window to change its settings, which include:


These settings are stored in your $HOME/.ss-viz directory when you press the OK button.

See also Advanced Options for more information on the graph configuration files.
 

top...

Reading Program Output

By default, the SimpleScalar Visualizer logs its output, including SimpleScalar options, summary statistics, and error messages to an ASCII text file in your $HOME directory, named ss_results.txt.

top...

Visualizer Terms

IFQ Instruction Fetch Queue
RUU Register Update Unit
LSQ Load Store Queue
BPB Branch Prediction
BTB Branch Prediction
ITLB Level 1 Instruction Translation Lookaside Buffer
IL1 Level 1 Instruction Cache
DL1 Level 1 Data Cache
L2 Level 2 Cache
DTLB Level 1 Data Translation Lookaside Buffer
FUs Functional Units
top...

Advanced Options

To control simulator settings and behavior, you have a variety of means: If you inadvertently specify a bad option, the application will exit immediately.  The error message and the cause of the problem will be logged to your output file.

top...

Known Defects