toast254 / WattmanGTK

A Wattman-like GTK3+ GUI

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

WattmanGTK

This is a Python3 program which uses a simple GTK gui to view, monitor and in the future overclock a Radeon GPU on Linux. Main screen

NOTE: This is a branch of the original wattmanGTK by user: BoukeHaarsma23. This branch allows for setting values from the UI (not just looking at them)

What can it do?

  • View memory and GPU P-states including voltages.
  • Ability to monitor signals from GPU sensors by means of plotting
  • Write a bash file with overclock settings
  • Multi GPU support in top dropdown list
  • Directly apply values from GUI (What this branch brings to the table)

What can't it do?

  • Fan control
  • Monitor multiple GPU's

Hardware Requirements

  • A Radeon card which uses the AMDGPU kernel driver

OS Requirements

  • Linux kernel 4.8+ (Ubuntu 16.10 or newer)
  • The overdrive kernel parameter must be set.
  • Python3 (3.6+)

Requirements

Production Environment

sudo apt install --yes \
    python3-matplotlib
    python3-gi
    python3-setuptools
    python3-cairo

Development Environment

python3.7 -m venv venv
source venv/bin/activate
python -m pip install --upgrade \
    matplotlib \
    setuptools \
    pycairo

Usage/ installation

Clone the repository and open a terminal in this folder and install the required packages. For installation run

Production Installation

    sudo ./install.sh

Development Installation

    python -m pip install -e .

After installation, the downloaded files may be deleted.

After installation, to run type in any terminal window:

    sudo wattmanGTK

in a terminal where you cloned the repository. When you want to apply the settings given in the GUI click apply, and instructions will be given on how to apply the overclock. This is at your own risk!

How do I know my card has the overdrive bit enabled

Just try to run WattmanGTK. It will tell you if your card does not support overdrive. Even if this is not the case you can set a kernel parameter to force overdrive to be enabled (may not work on all cards). For more information on how to set the parameter check the Arch Wiki

For GRUB based systems (like ubuntu): edit the /etc/default/grub file and edit the line:

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

And change it to:

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash amdgpu.ppfeaturemask=<the suggested value by WattmanGTK>"

Then grub needs to be updated, for ubuntu this is done by running

    sudo update-grub

For distro agnostic updating this can be done by running

on BIOS systems: # grub2-mkconfig -o /etc/grub2.cfg

on UEFI systems: # grub2-mkconfig -o /etc/grub2-efi.cfg

Then reboot the machine. Once rebooted you can check the current featuremask by

   printf "0x%08x\n" $(cat /sys/module/amdgpu/parameters/ppfeaturemask)

Setting the kernel parameter causes artifacts and glitching

It could be that setting the kernelparameter can enable features that should not be enabled which could be the cause.

The program does not work for me

Please open an issue here. Furthermore, refer to this thread on reddit for additional help: link

The program can not find a certain senor path and fails

Please refer to: BoukeHaarsma23#1

About

A Wattman-like GTK3+ GUI

License:GNU General Public License v2.0


Languages

Language:Python 99.7%Language:Shell 0.3%