PerfCCT(performance counter commit trace) is a Instruction-level granularity perfCounter like GEM5 How to use this: 1. Make with "WITH_CHISELDB=1" argument 2. Run with "--dump-db --dump-select-db lifetime", then get the database 3. Instruction lifetime visualize run "python3 scripts/perfcct.py "the-db-file-path" -p 1 -v | less" 4. Analysis script now is in XS-GEM5 repo, see https://github.com/OpenXiangShan/GEM5/blob/xs-dev/util/ClockAnalysis.py How it works: 1. Allocate one unique tag "seqNum" like GEM5 for each instruction at fetch stage 2. Passing the "seqNum" in each pipeline 3. Recording perf data through the DPIC interface |
||
|---|---|---|
| .. | ||
| cache | ||
| coverage | ||
| rolling | ||
| top-down | ||
| utils | ||
| constantHelper.py | ||
| gen_sep_mem.sh | ||
| generate_all.sh | ||
| parser.py | ||
| perfcct.py | ||
| requirements.txt | ||
| sram_size_collect.py | ||
| statistics.py | ||
| vlsi_mem_gen | ||
| xiangshan.py | ||