*nix 中的最大 CPU 负载

*nix 中的最大 CPU 负载

我正在通过虚拟机运行 Ubuntu 12.04 服务器(它在 vmware 的 ESXi 虚拟机管理程序上运行),但我不确定它是否对我分配给它的 8 个 CPU 具有完全访问权限。我的物理服务器有 2 个物理芯片和 4 个物理核心。我将相同的配置分配给我的虚拟服务器。不幸的是,我从未见过任何单个进程的 CPU 负载超过 12.5%,我想我的配置可能有问题。

TL:DR - 为了测试目的,通过 CLI 最大化 CPU 使用率的最简单方法是什么?

答案1

使用实用性stress在你的系统上产生 CPU 负载。

就像是:

[root@xt ~]# stress --cpu 8
stress: info: [1009156] dispatching hogs: 8 cpu, 0 io, 0 vm, 0 hdd

在此处输入图片描述

您到底对测试什么感兴趣?

答案2

100% / 8 = 12.5。您只用尽了 8 个可能核心中的一个。运行多线程程序。

答案3

在具有 8 个 CPU 的系统中,单个进程的 CPU 使用率不可能超过 12.5%。

更具体地说,单线程进程不能同时执行多项任务。如果一个拥有 8 个处理器的系统上的进程在 CPU 0 上不停地进行连续计算,那么它将消耗该系统上 12.5% 的可用 CPU 资源。为了加载多个内核,您需要运行多个进程,或者编写一个将线程化到多个内核的软件。

相关内容