AMD Phenom II X2 550 CPU 在 Xvid 编码期间无法全速运行

AMD Phenom II X2 550 CPU 在 Xvid 编码期间无法全速运行

我在系统上运行 Ubuntu 10.10 64 位,该系统的 AMD Phenom II X2 550 CPU 超频至 3.5ghz(从默认的 3.1ghz)。

当我使用 k9copy/mencoder 执行 Xvid 编码并使用检查 CPU 的速度时cat /proc/cpuinfo,两个核心似乎都没有超过 2400mhz(有时会因为 AMD Cool'n'Quiet 而更低)。

假设这是真实的速度,那么如何确保处理器在执行 CPU 密集型任务(例如视频编码)时全速运行?

编辑-以下是一些进一步的信息:

william@optimus:/usr/bin$ sudo dmesg | grep "powernow"
[0.985857] powernow-k8: 发现 1 个 AMD Phenom(tm) II X2 550 处理器 (2 个 CPU 核心) (版本 2.20.00)
[0.985885]powernow-k8:0:pstate 0(3500兆赫)
[0.985886]powernow-k8:1:pstate 1(2400兆赫)
[0.985887]powernow-k8:2:pstate 2(1900兆赫)
[0.985888]powernow-k8:3:pstate 3(800兆赫)

william@optimus:/usr/bin$ sudo dmidecode | grep "最大速度"
    最大速度:3200 MHz
william@optimus:/sys/devices/system/cpu/cpu0/cpufreq/ondemand$ cpufreq-info
cpufrequtils 007:cpufreq 信息 (C) Dominik Brodowski 2004-2009
向以下机构报告错误和缺陷[电子邮件保护], 请。
分析CPU 0:
  驱动程序:powernow-k8
  以相同硬件频率运行的 CPU:0
  需要通过软件协调频率的 CPU:0
  最大转换延迟:8.0 us。
  硬件限制:800 MHz - 3.50 GHz
  可用频率步进:3.50 GHz、2.40 GHz、1.90 GHz、800 MHz
  可用的 cpufreq 调节器:保守、按需、用户空间、省电、性能
  目前的政策:频率应该在800MHz和3.10GHz之间。
                  州长可以“按需”决定使用哪种速度
                  在此范围内。
  当前 CPU 频率为 800 MHz。
  cpufreq 统计:3.50 GHz:0.00%,2.40 GHz:5.63%,1.90 GHz:1.63%,800 MHz:92.74% (109352)
分析CPU 1:
  驱动程序:powernow-k8
  以相同硬件频率运行的 CPU:1
  需要通过软件协调频率的 CPU:1
  最大转换延迟:8.0 us。
  硬件限制:800 MHz - 3.50 GHz
  可用频率步进:3.50 GHz、2.40 GHz、1.90 GHz、800 MHz
  可用的 cpufreq 调节器:保守、按需、用户空间、省电、性能
  目前的政策:频率应该在800MHz和3.10GHz之间。
                  州长可以“按需”决定使用哪种速度
                  在此范围内。
  当前 CPU 频率为 800 MHz。
  cpufreq 统计:3.50 GHz:0.00%,2.40 GHz:8.58%,1.90 GHz:2.47%,800 MHz:88.95% (76452)

答案1

您的 CPU 扩展调节器可能设置为“按需”(您可以通过查看 进行检查/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor)。同样,您可以通过比较/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq和来检查扩展速度/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq

“按需”频率缩放器对于某些工作负载来说并不好用,我发现编码就是其中之一。 中有许多可调参数/sys/devices/system/cpu/cpu0/cpufreq/ondemand可能有帮助,尤其是up_threshold。对于一台机器,我将其设置为20,这似乎有帮助。

在更极端的情况下,你可以用“性能”替换频率缩放器,这将强制最大 CPU 频率:

for i in /sys/devices/system/cpu/cpu*; do echo performance | sudo tee $i/cpufreq/scaling_governor; done

答案2

在 BIOS 中禁用 Cool'n'Quiet 也能始终确保 CPU 以最大频率运行。但如果您想节省电量,则可能需要将其保持打开状态。

相关内容