Perun: Lightweight Performance Version System
Perun is an open source light-weight Performance Version System, which works as a wrapper over projects in Version Control Systems (such as git
) and (in parallel) tracks performance profiles (i.e., collection of performance metrics) corresponding to different versions of underlying project. Moreover, it offers a wide tool suite that can be used for automation of the performance regression test runs, postprocessing of resulting profiles (e.g., by creating performance models) or effective interpretation of the results.
Perun is intented to be used in two ways: (1) for a single developer (or a small team) as a complete solution for automating, storing and interpreting performance of project or (2) as a dedicated store for a bigger projects and teams. Its git-like design aims at easy distribution and simple interface makes it a good store of profiles along with the context.
Want to try Perun?
Note that we are no longer maintaining support for Python 3.8, nor do we support Python 3.12
(this is due to some of its dependencies). Perun may work, but we strongly advise to upgrade your
Python to one of the supported version between Python 3.9 and Python 3.11.
You can install Perun from pip as follows:
pip3 install perun-toolsuite
Alternatively you can install Perun from the source code as follows:
git clone https://github.com/Perfexionists/perun.git
cd perun
make install
These commands install Perun to your system as a runnable python package. You can then run Perun
safely from the command line using the perun
command. Run either perun --help
or see the cli documentation for more information about running Perun
commands from command line. Note that depending on your OS and the location of Python libraries, you
might require root permissions to install Perun.
All authors and contributors
- Tomas Fiedor:
https://github.com/tfiedor
mailto: TomasFiedor@gmail.com
(founder), core - Jiri Pavela:
https://github.com/JiriPavela
mailto: JirkaPavela@gmail.com
tracer, core - Ondrej Michal:
https://github.com/HarryMichal
energy profiler - Peter Mocary:
https://github.com/PeterMocary
tracer - Tomas Vojnar: https://www.fit.vut.cz/person/vojnar/.cs
- Adam Rogalewicz: https://www.fit.vut.cz/person/rogalew/.cs
- Martina Grzybowska: GUI
- Vojtech Hajek: C# profiler
- Matus Liscinsky: fuzzing, perfblowing
- Radim Podola:
mailto: rpodola@gmail.com
memory - Simon Stupinsky:
simondestupinsky@gmail.com
models
More Resources and links
- GitHub repository : https://github.com/Perfexionists/perun
- Issue tracker: https://github.com/Perfexionists/perun/issues
- In case of sensitive bugs like security vulnerabilities, please
contact Tomas Fiedor or Jirka Pavela directly
instead of using issue tracker. We value your effort to improve the security and privacy of our project!
- In case of sensitive bugs like security vulnerabilities, please
- Project documentation:
Unrelated links:
- Check out our research group focusing on program analysis, static and dynamic analysis, formal methods, verification
and many more: VeriFIT