https://github.com/0xaa4eb/perfscope
Simple GUI for Intel Processor Trace data
https://github.com/0xaa4eb/perfscope
javafx ptrace reverse-engineering
Last synced: 12 months ago
JSON representation
Simple GUI for Intel Processor Trace data
- Host: GitHub
- URL: https://github.com/0xaa4eb/perfscope
- Owner: 0xaa4eb
- Created: 2025-03-15T08:13:35.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-26T06:50:09.000Z (about 1 year ago)
- Last Synced: 2025-03-26T07:33:22.931Z (about 1 year ago)
- Topics: javafx, ptrace, reverse-engineering
- Language: Java
- Homepage:
- Size: 7.37 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
(Work in progress, POC) A simple viewer for raw Intel PTrace data stored in SQLite database.
### How to use
Only Linux and Intel CPU are supported. Record you program:
sudo perf record --kcore -e intel_pt/cyc/ ./lsm-tree
Then dump all data to SQLite using [export-to-sqlite.py](https://github.com/torvalds/linux/blob/master/tools/perf/scripts/python/export-to-sqlite.py) script:
sudo perf script --itrace=bep -s ~/export-to-sqlite.py sqlite branches calls
Open database in perfscope:

Perfscope is similar (and can be considered as fork of) to the script [exported-sql-viewer.py](https://github.com/torvalds/linux/blob/master/tools/perf/scripts/python/exported-sql-viewer.py) which
supports building call tree. Implementing additional staff is in progress.
### Build
* Generate JOOQ pojos `./gradlew generateJooq`
* Build `./gradlew clean generateJooq build`
### See also
* [perf ptrace example](https://perfwiki.github.io/main/perf-tools-support-for-intel-processor-trace/)
* [magic-trace](https://github.com/janestreet/magic-trace)