Difference between revisions of "Simpoints"

From gem5
Jump to: navigation, search
Line 5: Line 5:
 
1. To profile workload and generate SimPoint BBV file, use the following option:
 
1. To profile workload and generate SimPoint BBV file, use the following option:
  
--simpoint-profile [--simpoint-interval <interval length>]
+
build/ARM/gem5.opt <base options> configs/example/fs.py '''--simpoint-profile [--simpoint-interval <interval length>]''' <rest of fs.py options>
  
 
+
This will generate a SimPoint Basic Block Vector file (named simpoint.bb.gz)  in the gem5 run folder.
Requires single Atomic CPU and fastmem.
+
SimPoint profiling should be run with a single AtomicSimpleCPU configuration and fastmem. Multicore simulation is not supported.
 
<interval length> is in number of instructions. Default interval length is 10M instructions.
 
<interval length> is in number of instructions. Default interval length is 10M instructions.
  
2. Generate SimPoint analysis using SimPoint 3.2 from UCSD.
+
2. Generate SimPoint analysis using SimPoint 3.2 from UCSD. See http://cseweb.ucsd.edu/~calder/simpoint/index.htm for details.
 
(SimPoint 3.2 not included with this flow.)
 
(SimPoint 3.2 not included with this flow.)
  

Revision as of 16:31, 12 November 2014

<To be updated>

Steps to profile, generate, and use SimPoints with gem5:

1. To profile workload and generate SimPoint BBV file, use the following option:

build/ARM/gem5.opt <base options> configs/example/fs.py --simpoint-profile [--simpoint-interval <interval length>] <rest of fs.py options>

This will generate a SimPoint Basic Block Vector file (named simpoint.bb.gz) in the gem5 run folder. SimPoint profiling should be run with a single AtomicSimpleCPU configuration and fastmem. Multicore simulation is not supported. <interval length> is in number of instructions. Default interval length is 10M instructions.

2. Generate SimPoint analysis using SimPoint 3.2 from UCSD. See http://cseweb.ucsd.edu/~calder/simpoint/index.htm for details. (SimPoint 3.2 not included with this flow.)

3. To take gem5 checkpoints based on SimPoint analysis, use the following option:

--take-simpoint-checkpoint=<simpoint file path>,<weight file path>,<interval length>,<warmup length>

<simpoint file> and <weight file> is generated by SimPoint analysis tool from UCSD. SimPoint 3.2 format expected. <interval length> and <warmup length> are in number of instructions.

4. To resume from gem5 SimPoint checkpoints, use the following option:

--restore-simpoint-checkpoint -r <N> --checkpoint-dir <simpoint checkpoint path>

<N> is (SimPoint index + 1). E.g., "-r 1" will resume from SimPoint #0.