github.com/ryzeon-dev/cputil

CPU performance utils and processor analysis CLI [Python3][C++]

Open this visualization on its own page →

Contributors

3

Lines of Code

72

From

2023-12-08

To

2024-04-19

About ryzeon-dev/cputil

cputil is a Linux command-line tool and daemon for comprehensive CPU inspection, diagnostics, and tuning. It consolidates functionality typically scattered across utilities like lscpu, cpupower, and sensors into a single interface with particular attention to modern AMD systems, including support for P-State scaling and Zen-specific features like prefcore ranking and CCD-aware topology analysis.

The tool offers three main capabilities. Its inspection features provide detailed information about CPU model, architecture, topology, cache hierarchy, scaling configuration, temperatures, energy consumption through Intel RAPL sensors, per-core usage breakdown, C-state idle residency, AMD prefcore ranking with CCD grouping, and known vulnerabilities with mitigation status. The tuning functions allow users to set scaling governors, frequency limits, energy performance preferences, clocksource, and per-core C-state configuration, with convenient `max` and `min` commands for switching between performance and powersave profiles. A companion daemon called cputild enforces configurations persistently by re-applying settings on a configurable polling interval, ensuring settings survive system suspend and resume cycles.

The project is written in Python 3 with C++ components, distributed as a Debian package or buildable from source with standard development tools. It exports all system data in JSON and YAML formats for scripting and automation, distinguishing itself from related tools like cpupower and auto-cpufreq through its breadth of diagnostics, AMD-specific optimizations, and persistent daemon architecture.

Share this video