As part of my Ph.D. research, I play around with Intel Processor Trace a lot.
As a result, I frequently use libipt;
both as a library for my own software and for the reference programs it includes.
ptdump
and ptxed
are my goto utilities for quickly checking and
manipulating traces. They're super useful!
Sadly on Debian and Ubuntu, the default package repositories only have a package for the main library (no pre-compiled program binaries) that is woefully out of date (last update was in 2016). Having to repeatably compile xed and libipt from source quickly got annoying, so I've decided to publish my own repository. I've also made it public in hopes that others will find it useful.
The repository tracks the master branch on libipt and xed, so its packages should always contain the latest code. I've made adding it to apt super easy:
sh -c "$(wget -qO - https://super.gtisc.gatech.edu/libipt.sh)"
It currently has the following libraries:
- libxed
- libxed-dev
- libipt (includes the sideband library)
And the following pre-compiled programs:
- ptdump
- pttc
- ptxed
More information about these libraries and programs is available in their respective documentation. I hope to add more packages in the coming days.
For people interested in learning how to host their own repositories, I built this server using gocd, aptly, and apache.