Alumet provides a generic measurement pipeline with three steps: poll measurement sources, transform the data, and write the result. It is designed to be able to ingest metrics from various sources without redundant work. Supported sources include RAPL domains, Nvidia's NVML, and Jetson INA sensors. The list of supported devices will quickly grow over time, thanks to the next feature of Alumet.
Unlike existing tools, Alumet is "adaptive" in two ways:
This new tool is flexible, yet efficient and relatively small. The measurement pipeline is asynchronous, powered by the Tokio Rust library. Plugins are written as static or dynamic libraries, with an emphasis on efficiency and performance on hot paths.
We have carefully selected the most efficient and most resilient low-level measurement mechanisms, in order to minimize the overhead of the tool while keeping it maintainable. Read more about our comparative analysis of energy measurement techniques on x86 CPUs (using RAPL at ~1000Hz on Intel and AMD processors). We are also working on HPC-specific deployment schemes.
Alumet is available on GitHub under an open-source license (EUPL 1.2, which shares many characteristics with the LGPL license). You can use it for commercial projects, research projects, other non-commercial projects, or just for fun! We are writing a user guide, and are preparing a developer guide for plugin authors.
Join us in this thrilling journey! We have received positive feedback from engineers and researchers, and look forward to working with the community.