用于基准 CPU 时钟速度的 Linux 实用程序

用于基准 CPU 时钟速度的 Linux 实用程序

我有一台 CPU 为 3.4 GHz 的 Linux PC。我必须检查这个处理器,看看它是否真的以那个速度运行。有可用的基准吗?我跑了系统工作台但它只提供完成时间,我必须找到最大(实际)时钟速率。

答案1

使用命令:

lscpu

要了解所有 CPU 规格:

要获取 CPU 的具体频率,请使用带有 grep 的命令,如下所示:

lscpu | grep MHz

它会给你类似的输出:

CPU MHz:               2723.789

要查看实时 CPU 速度波动,请使用:

watch -n1 "lscpu | grep MHz | awk '{print $1}'";

https://askubuntu.com/questions/916382/ubuntu-get-actual-current-cpu-clock-speed

答案2

打印的频率lscpu或您看到的频率cat /proc/cpuinfo不一定是真实的 CPU 频率。根据您的硬件和 BIOS 设置,实际频率可能会有很大不同。例如,如果您已将 BIOS 配置为始终以 Turbo 模式运行 CPU 并禁用所有频率缩放。然后lscpu可能cat /proc/cpuinfo只显示基本频率。

在 Intel CPU(也许还有较新的 AMD CPU)上,您可以通过查看一些 CPU 计数器(例如使用命令)来得出当前的 CPU 频率perf stat。我写了一个小实用程序cpufreq实现了这个方法。另请参阅我的 StackOverflow 回答一些背景

因此,您可以确保您的 CPU 核心以最高速度1运行,然后并行调用该cpufreq实用程序以获得真正的最大 CPU 频率。


1通过执行 CPU 密集型基准测试,从而提高所有内核的 CPU 频率,或者通过其他方式禁用 CPU 频率缩放(例如,通过激活正确的调整配置文件,例如使用tuned-adm profile latency)。

答案3

i7z该工具提供实时数据,例如 Intel Core i3/i5/i7 CPU 的时钟频率。您可以观察睿频频率、乘数等因电源管理以及处于睡眠状态(C0、C1...)的时间而发生的变化。您可以通过运行以下命令来生成一些负载:

cat /dev/urandom > /dev/null

同时观察CPU频率。

答案4

你可以运行它lscpu | grep MHz,它会告诉你CPU现在正在运行什么。
你可以跑去cpufreq-info | grep "frequency is"看看它应该是什么。
sudo powertop启动实用程序;在选项卡上单击两次可查看“频率统计”选项卡,该选项卡会针对更大的样本不断更新。

然而,支持 Intel SpeedStep 的 CPUAMD PowerNow!中央处理器根据负载改变时钟速度,在需要且电源管理允许时运行高于规格。因此,您可能会看到 CPU 的运行速度比规格更快。

因此,要找到最大(实际)时钟速率,请确定 CPU 型号,然后转到https://ark.intel.com/content/www/us/en/ark.html#@Processors或者https://www.amd.com/en/products/specifications/processors并搜索处理器型号以查找最大时钟速率。

相关内容