Skip to main content

NVIDIA GPU automatic undervolting tool with precision V/F tuning, MSI Afterburner imports, and LACT exports

Project description

PenguinBurner logo

NVIDIA GPU Automatic Undervolting Tool

PenguinBurner is an NVIDIA GPU automatic undervolting tool. It helps you visualize and manage your GPU fine tuning setup with single voltage/frequency bin precision to maximize FPS per Watt, potentially leading into +33% and higher improvements for recent cards. MSI Afterburner imports and LACT exports are also supported.

Its main feature is automatic GPU undervolting: PenguinBurner tests your GPU under gaming and compute load, finds the most efficient stable undervolt, and can save it as a systemd daemon when you decide to apply it.

PenguinBurner is proven to work on modern Linux systems with the NVIDIA proprietary graphics driver. For best results, use an up-to-date driver. Supported GPUs are NVIDIA GeForce RTX 50 series Blackwell, RTX 40 series Ada Lovelace, and RTX 30 series Ampere cards. Older GPUs may miss required driver-level voltage/frequency control functionality.

GPU undervolting is meant to make your graphics card consume significantly less power while giving up as little performance as possible. The practical result can be dead-silent fan operation, lower temperatures, and lower electricity bills. PenguinBurner automatically searches for the operating sweet spot of your NVIDIA GPU, so you do not have to resort to trial and error or risk introducing avoidable system instability.

Install

Install the published package:

python -m pip install --user --upgrade penguin-burner

Fedora 42/43/44 users can install the COPR package with a proprietary NVIDIA driver stack from either Fedora's NVIDIA driver repository or RPM Fusion. Make sure the NVIDIA driver and CUDA utilities are already installed, then enable the COPR:

sudo dnf install -y dnf-plugins-core
sudo dnf copr enable -y jpietek/penguin-burner
sudo dnf install -y penguin-burner

Arch Linux and CachyOS users can install the AUR package:

paru -S penguin-burner

or:

yay -S penguin-burner

Ubuntu 25.10 and 26.04 users can install the PPA package:

sudo add-apt-repository ppa:jpietek/penguin-burner
sudo apt update
sudo apt install penguin-burner

Bundled pip entrypoints:

  • GUI: penguin-burner - alias: pburn
  • CLI/non-GUI: penguin-burner-cli - alias: pburn-cli

The pip package also provides a desktop file, so PenguinBurner should appear with its icon in your desktop environment's app launcher.

If your shell cannot find the commands after installation, make sure ~/.local/bin is in your PATH.

Automatic Undervolting

Core PenguinBurner component in action: algorithmic Auto Undervolting with built-in performance and stability checks based on a path-tracing gaming scenario, Q2RTX, and a custom CUDA compute test.

PenguinBurner Auto Undervolting V/F curve

Afterburner alike curve editor in Linux, fully manual with all the shortcuts bells and whistles!

PenguinBurner V/F curve editor

PenguinBurner Auto Undervolting performance bias slider

Before a scan starts, the Performance bias slider lets you decide what kind of undervolt PenguinBurner should search for. Move it toward Efficiency for the lowest practical power draw, or toward Performance when you want the scan to preserve more clock and prioritize keeping or improving FPS.

MSI Afterburner Import

Feel at home and import your MSI Afterburner profile from Windows.

PenguinBurner MSI Afterburner import

Performance-oriented undervolt profiles can bias the scan toward preserving FPS when every frame matters.

Silent Fan Curve

Apply a silent fan curve after PenguinBurner finds a stable undervolt.

PenguinBurner silent fan curve

Customize your fan curve with manual editor

PenguinBurner fan curve editor

LACT Export

Export to the LACT Linux GPU control tool is available from the profiles view.

Proprietary Inputs Are Not Bundled

This repository does not ship MSI Afterburner binaries or copied profile exports.

If you want to import Afterburner data, point PenguinBurner at the real MSI Afterburner directory from Windows. By default that directory is:

C:\Program Files (x86)\MSI Afterburner

Acknowledgements

Additional thanks:

  • NVIDIA: For the amazing graphics technology, that unfortunately lacks some features and polish on Linux.
  • Qt Project: For the excellent Qt6 UI.
  • Codex GPT 5.5 (Open AI): This project was implemented fully with AI based on human driven ideas and reverse engineering.

Special thanks to the LACT project and to Ilya Zlobintsev for pushing Linux NVIDIA tuning forward.

While PenguinBurner was still reverse engineering proprietary NVIDIA binaries and had only working voltage getters, LACT landed a working custom voltage/frequency point setter first. In particular, LACT pull request #957, feat: add Nvidia VF curve editor, was merged on April 18, 2026.

Run At Your Own Risk

Real hardware changes are made during the Auto UV procedure.

PenguinBurner can perform operations such as:

  • enabling persistence mode
  • setting board power limits
  • writing core V/F offsets
  • writing memory V/F offsets
  • taking over fan control

Support

If you like the tool, please consider supporting the project on GitHub:

https://github.com/sponsors/jpietek

Having issues with PenguinBurner? Please report bugs here:

https://github.com/jpietek/PenguinBurner/issues

CLI Documentation

The previous CLI-focused README has been archived here:

readme-cli.md

Start Clean From Scratch

To reset PenguinBurner user state for a fresh profile-style run, remove the config, local data, and cache directories:

rm -rf /home/jp/.config/PenguinBurner \
       /home/jp/.local/share/PenguinBurner \
       /home/jp/.cache/PenguinBurner

For a local PyPI-style wheel upgrade from this checkout, keep app flags separate from pip flags:

python -m pip install --user --no-index --no-deps --find-links dist --upgrade penguin-burner
penguin-burner

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

penguin_burner-0.2.3.tar.gz (3.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

penguin_burner-0.2.3-py3-none-any.whl (544.6 kB view details)

Uploaded Python 3

File details

Details for the file penguin_burner-0.2.3.tar.gz.

File metadata

  • Download URL: penguin_burner-0.2.3.tar.gz
  • Upload date:
  • Size: 3.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for penguin_burner-0.2.3.tar.gz
Algorithm Hash digest
SHA256 3932c665ed891c0236e7a8d92d140a811cb237e3d153f5a0a91ca61ab793342c
MD5 e994541bbe2a4834e24128a4cb9bb65a
BLAKE2b-256 3b1f831ea65974dcebf4123a81d183795d0af2c3d190ac7e1ec6f67c5d638376

See more details on using hashes here.

File details

Details for the file penguin_burner-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: penguin_burner-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 544.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for penguin_burner-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 fd7555c659419a7324b7ade41384b94863e15e94624ddc56c378d5c3b197289c
MD5 ea059c50701279981da394d688a74fe4
BLAKE2b-256 a7a91e116bfc8465524b2fab3c13de060e618993681817da1f7aa5cb9fc6a070

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page