Skip to main content

Nvidia GPU Undervolting Tool with Auto-UV and MSI Afterburner import support

Project description

PenguinBurner logo

Nvidia GPU Undervolting Tool

PenguinBurner is the Nvidia GPU Undervolting Tool. It is the ultimate NVIDIA undervolting companion on Linux. 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

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 recover 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 profile for the undervolt, especially for those with older GPU where every FPS matters. Hidden --yolo mode.

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

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 --yolo

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.1.5.tar.gz (3.8 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.1.5-py3-none-any.whl (515.1 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for penguin_burner-0.1.5.tar.gz
Algorithm Hash digest
SHA256 5f1dc187b529c21c7526ef409bbac3173e7fdaca09cbd854880c59d6f8a63faa
MD5 055fa02affce1e178d8b3b0d204971c7
BLAKE2b-256 3443dd765d37e9b47e025d009b5ca968d85de55e38191cf22ac6f952ca1559bc

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for penguin_burner-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 8ef8391c8a23721f10630d1f0f50b40e9b79780b7d7c45df115634fbb6cb4a27
MD5 6cb13e1ba95e33ffbd93f17aad1b4722
BLAKE2b-256 71dde697f7c7a76b59b15af3d2857e24afc4ba2550a9e0457cf92056af5a088c

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