Installation
The latest release of perun can be installed using pip
$ pip install perun
or if you need the latests updates, you can install from the main branch of github at you own risk
$ pip install https://github.com/Helmholtz-AI-Energy/perun
If you are going to work with MPI or GPUs, you can install it as extra dependencies.
$ pip install perun[mpi, nvidia, rocm]
If you want to get the source code and modify it, you can clone the source code using git.
$ git clone https://github.com/Helmholtz-AI-Energy/perun
perun uses poetry as a packaging and dependencies manager. Follow the instructions on the documentation on how to install poetry on you platform. Once poetry is installed, use the command
$ poetry install
to install the mandatory dependencies. To install the complete development environment, the extra --with dev
needs to be appended to the command.
After the installation is done, you can open a shell with the environment using the command
$ poetry shell
or you can run individual commands using the run
poetry subcommand. Check the poetry documentation for more information.
Dependencies
In order to get energy readings out of your hardware components, it is important that perun has access to the relevant interfaces.
CPU
Supported backends:
Currently, cpu energy readings from perun only support linux environments with read access to the powercap-rapl interface, which can only be read by root
on Linux 5.10 and later. If that is the case, please contact you system admin for solutions. We are currently working on alternative methods to provide energy readings.
GPU
Supported backends:
NVIDIA GPU power draw: NVIDIA NVML through nvidia-ml-py.
AMD GPU power draw: ROCM SMI through pyrsmi.
DRAM
- Supported backends:
DRAM energy: Intel RAPL throught powercap for linux machines.