Ubuntu通过 RyzenAdj 控制AMD CPU的功耗、频率、温度阈值等(R9000k 2021 5900hx 3080)

news/2024/5/19 1:01:38 标签: ubuntu, linux, debian, 硬件, CPU调控

Ubuntu通过 RyzenAdj 控制AMD CPU的功耗、频率、温度阈值等(R9000k 2021 5900hx 3080)

    • 概要
    • 安装(编译)
      • 构建要求
    • 示例(Demo)
    • 用法
    • 图形化界面 Ryzen Controller(可选)

概要

提示:在 R9000k 2021 5900hx 3080 上成功测试
Ubuntu通过 RyzenAdj 调整AMD CPU(Ryzen移动处理器)的电源管理设置。
github地址如下:https://github.com/FlyGoat/RyzenAdj
既可以被用于Linux,也有Windows的版本,具体详见github。

安装(编译)

提示:以下操作均在终端中

构建要求

构建此工具需要C和C++编译器以及cmake。它需要对NB PCI配置空间的特权访问,为了编译它,必须有可用的pcilib库和headers。

sudo apt update
sudo apt install cmake

在构建之前,请确保您有libpci依赖项。在基于Debian的发行版上,安装pcilib-dev软件包涵盖了这一点:

sudo apt update
sudo apt install libpci-dev

开始构建

mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make

示例(Demo)

如果我要将所有功率限制设置为45W,Tctl设置为90°C,那么命令行应该是:

sudo ./ryzenadj --stapm-limit=45000 --fast-limit=45000 --slow-limit=45000 --tctl-temp=90

夏季28度的情况下,实测 R9000k 2021 5900hx 3080 在此设置下跑深度学习温度压不住,会上升到100度。将所有功率限制设置为35W,Tctl设置为90°C时,温度能稳定在91度,最高偶尔会到92度。

sudo ./ryzenadj --stapm-limit=35000 --fast-limit=35000 --slow-limit=35000 --tctl-temp=90

用法

提示:需要root权限

$./ryzenadj -h
Usage: ryzenadj [options]

 Ryzen Power Management adjust tool.

    -h, --help                            show this help message and exit

Options
    -i, --info                            Show information and most important power metrics after adjustment
    --dump-table                          Show whole power metric table before and after adjustment

Settings
    -a, --stapm-limit=<u32>               Sustained Power Limit         - STAPM LIMIT (mW)
    -b, --fast-limit=<u32>                Actual Power Limit            - PPT LIMIT FAST (mW)
    -c, --slow-limit=<u32>                Average Power Limit           - PPT LIMIT SLOW (mW)
    -d, --slow-time=<u32>                 Slow PPT Constant Time (s)
    -e, --stapm-time=<u32>                STAPM constant time (s)
    -f, --tctl-temp=<u32>                 Tctl Temperature Limit (degree C)
    -g, --vrm-current=<u32>               VRM Current Limit             - TDC LIMIT VDD (mA)
    -j, --vrmsoc-current=<u32>            VRM SoC Current Limit         - TDC LIMIT SoC (mA)
    -k, --vrmmax-current=<u32>            VRM Maximum Current Limit     - EDC LIMIT VDD (mA)
    -l, --vrmsocmax-current=<u32>         VRM SoC Maximum Current Limit - EDC LIMIT SoC (mA)
    -m, --psi0-current=<u32>              PSI0 VDD Current Limit (mA)
    -n, --psi0soc-current=<u32>           PSI0 SoC Current Limit (mA)
    -o, --max-socclk-frequency=<u32>      Maximum SoC Clock Frequency (MHz)
    -p, --min-socclk-frequency=<u32>      Minimum SoC Clock Frequency (MHz)
    -q, --max-fclk-frequency=<u32>        Maximum Transmission (CPU-GPU) Frequency (MHz)
    -r, --min-fclk-frequency=<u32>        Minimum Transmission (CPU-GPU) Frequency (MHz)
    -s, --max-vcn=<u32>                   Maximum Video Core Next (VCE - Video Coding Engine) (MHz)
    -t, --min-vcn=<u32>                   Minimum Video Core Next (VCE - Video Coding Engine) (MHz)
    -u, --max-lclk=<u32>                  Maximum Data Launch Clock (MHz)
    -v, --min-lclk=<u32>                  Minimum Data Launch Clock (MHz)
    -w, --max-gfxclk=<u32>                Maximum GFX Clock (MHz)
    -x, --min-gfxclk=<u32>                Minimum GFX Clock (MHz)
    -y, --prochot-deassertion-ramp=<u32>  Ramp Time After Prochot is Deasserted: limit power based on value, higher values does apply tighter limits after prochot is over
    --apu-skin-temp=<u32>                 APU Skin Temperature Limit    - STT LIMIT APU (degree C)
    --dgpu-skin-temp=<u32>                dGPU Skin Temperature Limit   - STT LIMIT dGPU (degree C)
    --apu-slow-limit=<u32>                APU PPT Slow Power limit for A+A dGPU platform - PPT LIMIT APU (mW)
    --skin-temp-limit=<u32>               Skin Temperature Power Limit (mW)
    --power-saving                        Hidden options to improve power efficiency (is set when AC unplugged): behavior depends on CPU generation, Device and Manufacture
    --max-performance                     Hidden options to improve performance (is set when AC plugged in): behavior depends on CPU generation, Device and Manufacture

图形化界面 Ryzen Controller(可选)

提示:在 R9000k 2021 5900hx 3080 上成功安装,但是未能成功运行
Ryzen Controller
有Windows版和Linux版
gitlab地址如下:https://gitlab.com/ryzen-controller-team/ryzen-controller/
安装成功了,但是运行时就提示出错,图形化界面无法打开。


http://www.niftyadmin.cn/n/330779.html

相关文章

3分钟了解FactoryBean的作用和底层工作原理

大家好&#xff0c;我是冰点&#xff0c;本节我们通过对FactoryBean 接口源码解析&#xff0c;以及使用示例剖析&#xff0c;让大家3分钟了解FactoryBean的作用和底层工作原理。以及FactoryBean的使用场景&#xff0c;学以致用。 FactoryBean是Spring框架中的一个接口&#xf…

全新推出Bard,谷歌google或许可以靠它打败微软OpenAI ChatGPT

目录 前言Bard优势Bard新功能更直观的Bard互动Bard深度集成google search“Help me write” in Gmail谷歌地图路线的全新沉浸式视图谷歌照片全新Magic Editor体验Bard与其他服务的结合谷歌为Android开发者推出AI编码机器人其他 总结参考资料其它资料下载 前言 截止到目前&…

免费的Cloudflared实现外网访问群晖(续)

这两天可能中了甲流&#xff0c;因为做了抗原始终是一条杠 老婆是前天晚上开始发烧的&#xff0c;我则是从昨天中午开始的&#xff0c;昨晚是 37.8℃&#xff0c;今早起来是 38℃&#xff0c;症状就是肌肉酸痛&#xff0c;头有点昏昏沉沉的&#xff0c;公众号后台、博客上都积…

遇到一个同事,喜欢查其他同事的BUG,然后截图发工作大群里,还喜欢甩锅,该怎么办?...

职场上都有哪些奇葩同事&#xff1f; 一位网友吐槽&#xff1a; 遇到一个同事&#xff0c;喜欢查同级别同事的bug&#xff0c;截图发工作群&#xff0c;甚至发大群里&#xff0c;还喜欢甩锅&#xff0c;该怎么办&#xff1f; 职场工贼&#xff0c;人人喊打&#xff0c;网友们纷…

jeecms使用总结

一、站点配置 路径&#xff1a; 配置 -> 站点管理 -> 站点管理 使用&#xff1a; 配置访问域名属性及模板方案&#xff08;模板类别、栏目模板以及内容模板&#xff09;。目前仅使用通用栏目及通用内容。 二、模板配置 路径&#xff1a; 配置 -> 模板管理 -> 模…

【送书】前端系列14集-Vue3-setup

送书活动&#xff1a;挑选1名粉丝同学哦 免费包邮送。截止时间&#xff1a;2023/5/18号 19 : 00参与底部评论区说说&#xff1a;请在评论中分享你的阅读收获。 前端工程化&#xff1a;基于Vue.js 3.0的设计与实践实战 页面浏览量&#xff08;Page View&#xff0c;PV&#xff…

02 PostGIS常用空间分析函数

常用的PostGIS空间分析函数清单&#xff1a; 序号函数名描述示例1ST_AsText(geometry)将几何对象转换为文本形式的WKT字符串ST_AsText(ST_GeomFromText(‘POINT(1 2)’)) 返回 ‘POINT(1 2)’2ST_GeometryType(geometry)返回几何对象的类型&#xff0c;如POINT、LINESTRING、P…

用Vue写教务系统学生管理

文章目录 一.首先创建新的Demo二.在APP里面绑定DemoStudent三.源码附上四.效果图&#xff08;新增记录还未实现&#xff09; 一.首先创建新的Demo 二.在APP里面绑定DemoStudent <template><img alt"Vue logo" src"./assets/logo.png"><!--…