Recent Releases of ALUMET

ALUMET - v0.9.2 – towards production!

This is the last release of the project in 2025. Happy holidays! 🎅

Alumet agent is starting to be deployed in various datacenters. We have collected valuable feedback, and have used it to improve the monitoring agent and its plugins, making them more robust and offering more metrics.

Improvements

Core Changes ("under the hood")

Various fixes

Documentation

Full Changelog: https://github.com/alumet-dev/alumet/compare/v0.9.1...v0.9.2

Consumption - Computation and Communication - Rust
Published by TheElectronWill 18 days ago

ALUMET - v0.9.1

This release improves Alumet 0.9.1 by fixing some issues and adding small features.

New Features

Fixes

Documentation and Tests

Full Changelog: https://github.com/alumet-dev/alumet/compare/v0.9.0...v0.9.1

Consumption - Computation and Communication - Rust
Published by TheElectronWill 3 months ago

ALUMET - Alumet v0.9.0

This new version of Alumet strengthens the core of the framework, makes the plugins more robust, adds new features and comes with more documentation. While crafting Alumet 0.9.0, we have taken into account the feedback of many users, from individual researchers to cluster administrators.

Thanks to every contributor for making this new version possible! 🎉

Note: the repository has been re-organized. See Refactor/repository refactoring by @TheElectronWill in https://github.com/alumet-dev/alumet/pull/246.

Core Changes

Interesting changes:

  • The test module now provides a way to create new metrics directly with the RuntimeExpectations. It is also possible to access the MetricRegistry from the closure that checks the output of a transform step.
  • Timeseries helpers have been added to the framework, in a new timeseries module. They are used by the new version of the energy-attribution plugin.
  • Alumet 0.9 uses Rust edition 2024.

Details:

Plugin Changes

Major changes:

  • The cgroup-based plugins have been rewritten from scratch on more solid foundations. Kubernetes, OAR2, OAR3, Slurm and bare-metal cgroups (with or without systemd) are now supported, with cgroup v1 and cgroup v2.
  • The energy-attribution plugin has been rewritten with a multi-timeseries synchronzation algorithm, which allows it to handle multiple inputs with varying frequencies. But that's not all! You can customize the attribution with a simple config file. Refer to the documentation of the plugin for more information.
  • New plugins have been created: process-to-cgroup-bridge and kwollect-input.

Details:

CI Changes

We can now build packages and images for ARM.

Agent Changes

Documentation Improvements

We have written a README for almost every plugin. The remaining files will come in the following weeks.

New Contributors

Full Changelog: https://github.com/alumet-dev/alumet/compare/v0.8.4...v0.9.0

Consumption - Computation and Communication - Rust
Published by TheElectronWill 4 months ago

ALUMET - Alumet v0.8.4

What's Changed

Full Changelog: https://github.com/alumet-dev/alumet/compare/v0.8.3...v0.8.4

Consumption - Computation and Communication - Rust
Published by TheElectronWill 8 months ago

ALUMET - Alumet v0.8.3

This is a fix release for v0.8.2. See the release notes of v0.8.2.

  • Hotfix: more lenient metric registration by @TheElectronWill in https://github.com/alumet-dev/alumet/pull/181
    This resolves an issue that prevented the plugins procfs and k8s from being enabled at the same time (among others).

Consumption - Computation and Communication - Rust
Published by TheElectronWill 8 months ago

ALUMET - Alumet v0.8.2

What's Changed

Noteworthy:

Full Changelog: https://github.com/alumet-dev/alumet/compare/v0.8.1...v0.8.2

Consumption - Computation and Communication - Rust
Published by TheElectronWill 8 months ago

ALUMET - Alumet v0.8.1

What's Changed

Main change: he following plugins are now part of the standard agent, as a beta version (they will change in the future): aggregation, energy-attribution, energy-estimation-tdp.

Full Changelog: https://github.com/alumet-dev/alumet/compare/v0.8.0...v0.8.1

Consumption - Computation and Communication - Rust
Published by TheElectronWill 9 months ago

ALUMET - Alumet v0.8.0

Core changes

Repository changes

Standard agent changes

Plugin changes

New Contributors

Full Changelog: https://github.com/alumet-dev/alumet/compare/v0.7.0...v0.8.0

Consumption - Computation and Communication - Rust
Published by TheElectronWill 9 months ago

ALUMET - Alumet v0.7.0

Framework changes

Agent changes

Like the previous release, pre-compiled binaries of the agents are attached below.

Plugins changes

New Contributors

Full Changelog: https://github.com/alumet-dev/alumet/compare/v0.6.1...v0.7.0

Consumption - Computation and Communication - Rust
Published by TheElectronWill 12 months ago

ALUMET - Alumet v0.6.1

Bugfixes

Minor changes

Pre-compiled binaries

You can find below pre-compiled binaries of the Alumet agents. They are compiled on Ubuntu 22.04 LTS and will work on any system with a glibc version >= 2.35. They include a set of plugins, but not all. Refer to the docs to build your custom Alumet agent and choose the measurement plugins that you want to deploy.

Full Changelog: https://github.com/alumet-dev/alumet/compare/v0.6.0...v0.6.1

Consumption - Computation and Communication - Rust
Published by TheElectronWill about 1 year ago

ALUMET - Alumet v0.6.0

What's new in the core

  • Big refactoring of Alumet's core library.
  • Better error handling and recovery.
  • Cleaner builders for pipeline and agent.
  • Alumet now supports async outputs.
  • Global metric registry: the metrics can now be accessed from any element of the pipeline (see #19)
  • The configuration can now disable individual plugins
  • Environment variables can now be used in the config
  • More possibilities of control
  • More tests
  • Bugfixes

Plugin changes

  • New plugin: first version (alpha) of the energy attribution plugin, tested on K8S clusters at 1Hz.
  • New plugin: system and processes monitoring via /proc
  • The output of the relay client now uses a buffer for better performance.
  • The k8s plugin has been generalized to a cgroupv2 plugin.
  • The k8s plugin handles API tokens a little better.
  • More config options

Details

New Contributors

Full Changelog: https://github.com/alumet-dev/alumet/compare/v0.5.0...v0.6.0

Consumption - Computation and Communication - Rust
Published by TheElectronWill over 1 year ago

ALUMET - ALUMET v0.5.0

This new release features the support of Kubernetes clusters and OAR2 clusters.

Plugin changes

New Contributors

Full Changelog: https://github.com/alumet-dev/alumet/compare/v0.4.0...v0.5.0

Consumption - Computation and Communication - Rust
Published by TheElectronWill over 1 year ago

ALUMET - ALUMET v0.4.0

Core changes

  • It is now possible to add new measurement sources at runtime, after the pipeline has been built.
  • Event handlers now return a Result to handle errors more gracefully.
  • The pipeline now waits for the sources, transforms and outputs to finish before stopping. This allows all the plugins to flush their buffers, avoiding data loss.
  • Errors that occur in pipeline elements are handled more effectively.
  • Improved ergonomics and robustness of the pipeline builder.
  • MeasurementBuffer now implements IntoIterator.
  • Other improvements to the plugin API, including more documentation ✍️

The aforementioned improvements have enabled the creation of two new plugins and one agent feature! (see below) 🎉

Plugin changes

  • New: perf plugin (#2) for perf_events monitoring and profiling (hardware, software and cache events are supported)
  • New: influx plugin to send measurements to InfluxDB v2
  • More options for the csv plugin
  • More options for the nvidia plugin
  • Bug fixes for the rapl plugin: it is now more robust to unexpected situations (such as kernel modules not being loaded)

Agent changes

  • The app-agent crate (that produces alumet-agent) has a new "exec mode" that spawns and observes a single process.
  • Both the "normal" alumet agent and the relay agent now suggest to regenerate the configuration file if it is invalid.
  • Other improvements to the textual output of the agents.

Full Changelog: https://github.com/alumet-dev/alumet/compare/v0.3.0...v0.4.0

Consumption - Computation and Communication - Rust
Published by TheElectronWill over 1 year ago

ALUMET - ALUMET v0.3.0

Core changes

  • Support for anonymous sources
  • Configurable command latency guarantee
  • Configuration management: 1 config per app ("global config") + 1 config per plugin, from TOML files (can be overriden by CLI arguments)
  • Graceful shutdown on SIGTERM
  • Other improvements to the plugin API
  • Beginning of the EventBus for inter-plugin communication
  • First "good" version of the API for dynamic plugins (still very much WIP)

Plugin changes

The aforementioned improvements have enabled the creation of new plugins! 🎉

  • K8S plugin (#1) thanks to @AngeC15
  • Relay plugin with two parts (client + server) thanks to @TheElectronWill
  • Draft of the "perf events" plugin

Relay plugin

The relay plugin, used by app-relay-collector, enables Alumet to work in "relay" mode, where each compute node runs an agent that pushes the metrics to a "collector".
image

Consumption - Computation and Communication - Rust
Published by TheElectronWill over 1 year ago

ALUMET - ALUMET v0.2.0

Core changes

  • More documentation!
  • Plugins written in Rust are now created by implementing the rust::AlumetPlugin instead of Plugin. This allows the name and version of static plugins to be available before the initialization phase.
  • Agent creation is now easier than ever, thanks to agent::Agent and agent::AgentBuilder
  • Plugins can now register custom units.
  • Units can now be prefixed, for example PrefixedUnit::milli(Ampere)
  • More work on configuration files.

Plugin changes

  • plugin-nvidia now supports NVIDIA Jetson devices running NVIDIA Jetpack versions 4.x, 5.x and 6.x
  • plugin-rapl is now more robust to errors and gives actionable solutions to common permission issues

Consumption - Computation and Communication - Rust
Published by TheElectronWill over 1 year ago