通常来说,Intel和 AMD 的处理器都会提供一个以瓦特为单位的 TDP(热设计功率)值。该数值可以帮助制造商为特定处理器设计出合适的散热解决方案,消费者们则使用它来估算设备功耗。
TDP 值一般都是可配置的,制造商会通过增加或降低 TDP 值来获得更高的性能、更低的功耗。本文我会向大家展示如何在 Windows 11 和 Linux(Ubuntu 22.04) 中检查 TDP(即:PL1和PL2的功率限制)值。注意,在较新的处理器中,TDP 值已经被替换为了 PBP(处理器基础功率)值,替换之后,PL1(长持续时间)可以看成BPB,而PL2(短持续时间)则可以看成最大睿频功率(MTP),至少目前看来 Intel 芯片上是这样的。
检查Windows 11 中的 TDP 值
首先,我们需要安装并启动 HWiNFO64 程序,这里不用勾选所有选项,按照默认的设置即可。接着转到控制处理器选择好自己的处理器。
对于 Intel 处理器而言,这些值可以直接在右侧面板上的 CPU 热设计功率(TDP)、CPU功率限制 1 和 CPU 功率限制 2 行中找到。如果是较旧的 AMD 处理器可能就只显示 TDP、TDC(热设计电流)和 EDC(电气设计电流)了,它们分别对应的是长期和短期限制。不过,比较新的 ADM 处理器应该能显示与 Intel CPU 类似的数据。
如果要更改功率限制值,需要先检查 BIOS/UEFI 设置,如果设置不可用,就可以使用适用于 AMD 的 RyzenAdj 这类工具更改功率限制值。但需要注意,有些计算机制造商是不允许用户更改 TDP 的。
在 Linux 中查看功率限制(Ubuntu 22.04)
我使用 powercap-info 命令行工具来检查 TDP 设置。它位于 powercap-utils 软件包中,在Ubuntu/Debian 发行版中可以按以下方式安装:
1 |
sudo apt install powercap-utils |
下面是使用 Intel 处理器时的输出结果:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
$ powercap-info -p intel-rapl Zone 0 name: package-0 enabled: 0 max_energy_range_uj: 262143328850 energy_uj: 1431662228 Constraint 0 name: long_term power_limit_uw: 3999744 time_window_us: 27983872 max_power_uw: 5999616 Constraint 1 name: short_term power_limit_uw: 5999616 time_window_us: 976 max_power_uw: 0 Zone 0:0 name: core enabled: 0 max_energy_range_uj: 262143328850 energy_uj: 975192877 Zone 0:1 name: uncore enabled: 0 max_energy_range_uj: 262143328850 energy_uj: 308897463 Zone 0:2 name: dram enabled: 0 max_energy_range_uj: 262143328850 energy_uj: 410797898 Constraint 0 name: long_term power_limit_uw: 0 time_window_us: 976 |
这些数字都是以 uW 为单位的,但我们可以清楚地看到 PL1 长持续时间限制设置为了 4W(3.99W),PL2 短持续时间限制为 6W(5.99W)。
如果要更改这些设置,需要检查 BIOS 设置,如果该设置不可用,可以尝试运行 powercap-set命令:
1 |
sudo powercap-set intel-rapl -z 0 -c 1 -l 25000000 |
这条命令在区域 0上设置了一个 25 W (即25000000 uW) 的功率上限,约束为 1。 用这样的方式修改有点复杂,因此如果真的要使用可能需要查看相关文档。相关的实用程序、库的源代码也可以在 Github 上找到。
以下是我在装有 AMD Ryzen 5 3550H 处理器的 Trigkey Speed S3 迷你电脑上的输出:
1 2 3 4 5 6 7 8 9 10 |
powercap-info -p intel-rapl enabled: 1 Zone 0 name: package-0 enabled: 0 max_energy_range_uj: 65532610987 Zone 0:0 name: core enabled: 0 max_energy_range_uj: 65532610987 |
我在AMD中没有发现这样的数值,因为除了较新的处理器外,RAPL只能部分实现。
因此,我就打算使用 Ryzenaj 脚本了。
1 2 3 4 5 6 |
sudo apt install libpci-dev git clone https://github.com/FlyGoat/RyzenAdj cd RyzenAdj mkdir build && cd build cmake -DCMAKE_BUILD_TYPE=Release .. make |
现在,我运行该程序来检查参数:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
$ sudo ./ryzenadj -i CPU Family: Picasso SMU BIOS Interface Version: 16 Version: v0.11.1 PM Table Version: 1e0004 | Name | Value | Paramter | |---------------------|-----------|--------------------| | STAPM LIMIT | 25.000 | stapm-limit | | STAPM VALUE | 2.640 | | | PPT LIMIT FAST | 30.000 | fast-limit | | PPT VALUE FAST | 2.891 | | | PPT LIMIT SLOW | 25.000 | slow-limit | | PPT VALUE SLOW | 2.508 | | | StapmTimeConst | 200.000 | stapm-time | | SlowPPTTimeConst | 5.000 | slow-time | | PPT LIMIT APU | nan | apu-slow-limit | | PPT VALUE APU | nan | | | TDC LIMIT VDD | 35.000 | vrm-current | | TDC VALUE VDD | 0.014 | | | TDC LIMIT SOC | 10.000 | vrmsoc-current | | TDC VALUE SOC | 0.273 | | | EDC LIMIT VDD | 45.000 | vrmmax-current | | EDC VALUE VDD | 20.438 | | | EDC LIMIT SOC | 13.000 | vrmsocmax-current | | EDC VALUE SOC | 2.913 | | | THM LIMIT CORE | 100.000 | tctl-temp | | THM VALUE CORE | 47.584 | | | STT LIMIT APU | nan | apu-skin-temp | | STT VALUE APU | nan | | | STT LIMIT dGPU | nan | dgpu-skin-temp | | STT VALUE dGPU | nan | | | CCLK Boost SETPOINT | 50.000 | power-saving / | | CCLK BUSY VALUE | 22.519 | max-performance | |
根据文档,我们有三个功率限制,以瓦特表示如下:
- 持续功率限制(STAPM 限制) – 25 W
- 实际功率限制(PPT限制快速) – 30 W
- 平均功率限制(PPT限制慢)– 25 W
我可以使用以下命令行将所有功率限制更改为 35W,并将 Tctl 更改为 90°C。
1 |
./ryzenadj --stapm-limit=35000 --fast-limit=35000 --slow-limit=35000 --tctl-temp=90 |
注意,我不建议频繁更改这些值,而且系统温度也需要一直监控的。因为如果温度过热,可能会更发生 CPU 降频问题,甚至会降低系统性能、缩短使用寿命。
以上大部分信息都是从 Ian 对迷你电脑评测中收集而来的,例如他对 Beelink SEi11 Pro的评测,以及他关于“操作系统和内存”对迷你 PC 游戏性能影响的评测。
文章翻译者:Jacob,嵌入式系统测试工程师、RAK高级工程师,物联网行业多年工作经验,熟悉嵌入式开发、测试各个环节,对不同产品有自己专业的分析与评估。