Skip to content

Tool to convert O3PipeView output from Gem5 simulator to Perfetto tracing

License

Notifications You must be signed in to change notification settings

ProteusLab/uScope

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

uScope

Research Project gem5 Computer Architecture Status: Active Python 3.8+ License: Apache 2.0

uScope gives you a microscopic view of a gem5 O3CPU simulation by transforming PipeView traces into Perfetto timelines.

Verify, optimize, and explore cycle-approximate simulation with uScope!

Video

Features

  • 📊 Integration with Perfetto / Chrome Tracing – leverage a modern, fast visualization platform for in‑depth pipeline analysis.
  • 🚀 Extends gem5's performance analysis – transform O3PipeView traces into an interactive timeline, offering a novel perspective on verification and performance analysis of PipeView traces..
  • 🎯 Identify compute‑bound and memory‑bound bottlenecks – visualize pipeline stage occupancy and execution unit utilization to quickly determine whether performance is limited by computation or memory access.
  • 🔍 Interactive exploration – zoom, pan, and inspect individual instructions in Perfetto.

Quick Start

pip install --upgrade pip setuptools wheel
git git@github.com:ProteusLab/uScope.git
cd uScope
pip install -e .

Usage

  1. Collect a trace from gem5 with the O3PipeView debug flag:
/path/to/gem5.opt                   \
    --debug-flags=O3PipeView        \
    --debug-file=trace.out          \
    configs/example/se.py           \
    --cpu-type=O3CPU                \
    --cmd=/path/to/your-program
  1. Convert the trace:
uScope --input-file trace.out --output trace.json
  1. Open trace.json in Perfetto UI to explore the pipeline.

Examples

  • Explore the examples/ directory for assembly programs and their corresponding tracings.

Contributing

We welcome contributions! Feel free to open issues or submit pull requests.

About

Tool to convert O3PipeView output from Gem5 simulator to Perfetto tracing

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages