auto-epp-rs is a program that manages the energy performance preferences (EPP) of your AMD CPU using the AMD-Pstate driver.

Overview

auto-epp-rs

auto-epp-rs

auto-epp-rs is a program that manages the energy performance preferences (EPP) of your AMD CPU using the AMD-Pstate driver. It adjusts the EPP settings based on whether your system is running on AC power or battery power, helping optimize power consumption and performance. This project is a rewrite of the original Python version jothi-prasath/auto-epp in Rust, aiming to improve memory efficiency and overall performance.

Requirements

  • AMD CPU with the AMD-Pstate-EPP driver enabled.
  • Linux 6.3+
  • Rust (make deps)

How to enable amd-pstate-epp

Note: Since Linux 6.5, amd-pstate-epp is enabled by default, so you can skip this section.

GRUB

This can be done by editing the GRUB_CMDLINE_LINUX_DEFAULT params in /etc/default/grub. Follow these steps:

  1. Open the grub file using the following command:
sudoedit /etc/default/grub
  1. Within the file, modify the GRUB_CMDLINE_LINUX_DEFAULT line to include the setting for AMD P-State EPP:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash amd_pstate=active"

systemd-boot

This can be done by editing the options params in /efi/loader/entries/your-entry.conf. Follow these steps:

  1. Open the grub file using the following command:
sudoedit /efi/loader/entries/your-entry.conf
  1. Within the file, modify the options line to include the setting for AMD P-State EPP:
options    ... amd_pstate=active

Installation

Arch Linux

On Arch Linux, and Arch-based distributions, auto-epp-rs can be found in the AUR. Install with an AUR helper like yay:

yay -S auto-epp-rs

Usage

Monitor the service status

systemctl status auto-epp-rs

To restart the service

sudo systemctl restart auto-epp-rs

To stop the service

sudo systemctl stop auto-epp-rs

Edit the config file

sudoedit /etc/auto-epp-rs.conf
You might also like...
The PC-based component of a two-part Linux driver for using a TI calculator as an external keyboard
The PC-based component of a two-part Linux driver for using a TI calculator as an external keyboard

Introduction i68apollo is the computer-based component of the two-part i68 (*I*nput from Motorola *68*000[fn:4]-based calculator) prototype userspace

A CLI tool which can help you automatically kill process of your choice. Useful for freeing up memory and CPU usage!
A CLI tool which can help you automatically kill process of your choice. Useful for freeing up memory and CPU usage!

Quickiller There are always programs such as chrome that keep eating up your resources even when closed! The only way to prevent this is to kill all o

png_defringe_rs is a port of Immorpher's PNG Defringe program written in Rust to achieve easier installation and faster performance.

png_defringe_rs png_defringe_rs is a port of Immorpher's PNG Defringe program written in Rust to achieve easier installation and faster performance. U

A simple program for C program IO testing. Written in Rust

A simple program for C program IO testing. Written in Rust, using concurrency to speed up valgrind testing. Make sure to update settings at your first run of the program!

That program use on platform windows. And if you write any text on uncorrect keyboard layout, that program for that.
That program use on platform windows. And if you write any text on uncorrect keyboard layout, that program for that.

πŸ“Œ This program is designed to translate text into the correct layout when typing is incorrect. πŸ“Œ Example ghbdtn - ΠΏΡ€ΠΈΠ²Π΅Ρ‚ Just (by default) pressing

Rust crate for interacting with the Windows Packet Filter driver.

NDISAPI-RS NDISAPI-RS is a Rust crate for interacting with the Windows Packet Filter driver. It provides an easy-to-use, safe, and efficient interface

ESC/POS driver for Rust πŸ¦€
ESC/POS driver for Rust πŸ¦€

recibo - ESC/POS driver for Rust This project provides an implementation for a subset of Epson's ESC/POS protocol used by compatible receipt printers.

A Windows virtual display driver written in Rust (works with VR, etc)

Virtual Display Driver This is a Windows driver made in Rust which creates a virtual desktop. It has many uses, such as: A private virtual desktop for

Platform that enables Windows driver development in Rust. Developed by Surface.

windows-drivers-rs This repo is a collection of Rust crates that enable developers to develop Windows Drivers in Rust. It is the intention to support

Releases(v0.0.3-3)
Owner
Taufik Hidayat
Junior Back-end Developer - Computer Science Student - FOSS and Linux Enthusiast
Taufik Hidayat
Utility library for some Lenovo IdeaPad laptops. Supports IdeaPad Intel and AMD Models (15IIL05 and 15ARE05)

ideapad A Rust utility library for some Lenovo IdeaPad specific functionality. A Fair Warning This crate calls raw ACPI methods, which on the best cas

ALinuxPerson 2 Aug 31, 2022
The hacker's BLE (bluetooth low energy) browser terminal app

Blendr is a terminal UI app for browsing BLE (Bluetooth Low Energy) devices. It allows you to inspect, search, connect, and analyze data coming from B

Dmitriy Kovalenko 120 Jul 4, 2023
The auto-managed -sys crate for Apple platforms using bindgen directly from build environment

apple-sys Apple platforms have a rather monotonous programming environment compared to other platforms. On several development machines, we will depen

Jeong, YunWon 34 Apr 17, 2023
Tracing layer that automatically creates and manages progress bars for active spans.

tracing-indicatif A tracing layer that automatically creates and manages indicatif progress bars for active spans. Progress bars are a great way to ma

Emerson Ford 95 Feb 22, 2023
πŸš€ JavaScript driver for ScyllaDB, harnessing Rust's power through napi-rs for top performance. Pre-release stage. πŸ§ͺπŸ”§

?? JavaScript driver for ScyllaDB. Pre-release stage. ???? ⚠️ Disclaimer ⚠️ This repository and the associated npm package are currently in a ?? pre-r

Daniel Boll 16 Oct 21, 2023
A filesystem driver that allows you to view your Blackboard course contents as if they were normal files and folders on your system!

BlackboardFS Blackboard: noun A website so bad that it might as well be a network drive. BlackboardFS is a filesystem driver that allows you to view y

null 22 Sep 4, 2023
Blink program on RISC L106 80Mhz 32bit CPU

esp8266-blink Blink program on RISC L106 80Mhz 32bit CPU Flashing Running rust on ESP* is sort of hard... We won't cover the installation process, ins

Spar 2 Oct 25, 2021
A diff-based data management language to implement unlimited undo, auto-save for games, and cloud-apps which needs to retain every change.

Docchi is a diff-based data management language to implement unlimited undo, auto-save for games, and cloud-apps which needs to save very often. User'

juzy 21 Sep 19, 2022
πŸš€ Yet another repository management with auto-attaching profiles.

?? ghr Yet another repository management with auto-attaching profiles. ?? Motivation ghq is the most famous solution to resolve stress of our reposito

Naoki Ikeguchi 29 Dec 2, 2022
auto-rust is an experimental project that aims to automatically generate Rust code with LLM (Large Language Models) during compilation, utilizing procedural macros.

Auto Rust auto-rust is an experimental project that aims to automatically generate Rust code with LLM (Large Language Models) during compilation, util

Minsky 6 May 14, 2023