Sources Overview
Joule Profiler is designed to be simple, portable, and focused on monitoring the components responsible for the majority of energy consumption, such as the CPU, GPU, and SoC. While it does not aim to support every possible energy source on every device, the profiler can be extended by implementing custom sources for specific devices or components.
Supported Architectures
- CPU: The only target is Intel x86 architecture at the moment.
- GPU: Current focus is on Nvidia GPUs.
- OS: Only Linux-based systems are officially supported at the moment.
Available Sources
-
Intel RAPL: Measures CPU and DRAM energy domains.
- Implemented using either perf_event or Powercap on Linux systems.
- For details, see RAPL.
-
Nvidia GPUs (NVML): Provides energy and performance metrics for Nvidia GPUs, see NVML.
-
perf_event: Measures various performance counters like hardware or software on Linux systems, see perf_event.
Extending Joule Profiler
Users can implement new metric sources allowing the monitoring of additional devices or components beyond the default set. For guidance, see Adding a New Source.