A simple trace visualizer for Ramulator2. This project is still very early-stage and not really useful yet.
You need to generate trace files using the BinaryTraceRecorder plugin found in my fork of Ramulator2. This hasn't been merged into Ramulator2 (yet), so I would just recommend copying the mtrc/mtrc.h and binary_trace_recorder.cpp files into your own build of Ramulator2, and adjusting the relevant CMakeLists.txt accordingly.
Optionally, if you want to verify the correctness of the generated trace files, you can run BinaryTraceRecorder alongside the normal TraceRecorder plugin and then run the mtrc/test_mtrc.py script on any binary trace file, which will turn the binary trace back into a CSV file. Then you can get the diff of that CSV and the corresponding one generated by TraceRecorder. If the diff is empty, it means that both traces are identical, and BinaryTraceRecorder supplies correct traces.
# This spits out my_trace.csv
python3 test_mtrc.py my_trace.mtrc
# my_trace_csv.ch0 is the file generated by `TraceRecorder`
diff -a my_trace.csv my_trace_csv.ch0You can download a binary from one of the releases.
For Linux, there only are AppImage, .deb and .rpm distributions of the app.
You need to install the needed Tauri dependencies to run the development environment.
Then you need to install Rust and Node.js This project uses and recommends using Bun as the package manager because it's very fast, it will still work with the default package manager (npm).
# If you did not install bun, just replace `bun` with `npm` or any other package manager.
bun install
# Start the development server.
# It will watch for changes in the files and rebuild the application automatically.
bun run tdev
# If you want to build a binary:
# It will build the application for the current platform.
# Binary will land in the `src-tauri/target` directory.
bun run tbuildFor further information, please refer to the Tauri documentation.