我在运行一些网站的AWS上有一个m1.small EC2 实例。我注意到我的 CPU 使用率每隔 30 分钟(0:06、0:36、1:06,...)就会出现固定的峰值。
我检查了我的 crons(我有很多),没有人每 30 分钟运行一次。看着top我注意到峰值大约有 1 分钟长,并且几乎完全由“被盗 CPU” (%st) 组成。我读过 Amazon VM 管理程序窃取了 CPU 时间,但我不明白为什么会发生这种情况(发生这种情况时我没有运行 CPU 密集型的东西)以及为什么它恰好每 30 分钟一次。
你有什么线索吗?我应该购买更大的实例吗?我希望不会,因为其余时间 CPU 非常低,平均负载 永远不会超过 0.5 ...

我有一台装有CentOS 6.4的刀片服务器。
在空闲状态下,它显示的恒定负载平均值大于 1。但是我准备了另一台具有相同硬件和 CentOS 版本的机器,它的负载平均值在空闲时保持在 0 左右。
top的输出如下:
top - 10:23:04 up 156 days, 18:15, 1 user, load average: 1.08, 1.35, 1.31
Tasks: 534 total, 1 running, 533 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 65959040k total, 10021484k used, 55937556k free, 167092k buffers
Swap: 32767992k total, 13884k used, 32754108k free, 7084024k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
20951 root 20 0 15396 1608 …Run Code Online (Sandbox Code Playgroud) 在我服务器的 BIOS 中,我有 2 X 2.26 四核,但是在 VMware 中我只看到每个 CPU 有 2 个内核?这肯定不对吧?
处理器核心和处理器插槽应显示如下:
处理器插槽:2
每个插槽的核心数:4
逻辑处理器 16
超.. : 活跃
答案 - 核心设置为双核,并非全部。
virtualization central-processing-unit vmware-esxi vmware-vcenter vmware-vsphere
在比较英特尔至强 E5 和 E7 处理器时,我注意到 E5 处理器指定为 2S 或 4S 可扩展性,而 E7 处理器指定为S 2S、S 4S 或S 8S 可扩展性。
我知道处理器被指定用于同一主板上给定数量的插槽,但额外的 S 究竟意味着什么?2S和S2S,4S和S4S有什么区别?
在高性能计算的背景下,是否存在合理/安全的 CPU 负载水平?
我理解的意思的平均负载在一般的服务器,但不知道会发生什么,建成并用于高性能计算服务器。
通常的约定是否load <= # of cores适用于这种环境?
鉴于我的系统特定详细信息,我很好奇,通常load >> # of cores每个节点:
节点的正常运行时间很长,CPU 使用率/负载通常很高。很少有硬件故障,尤其是 CPU,但我不知道在给定高负载的节点的整个生命周期中会发生什么。
示例top输出:
top - 14:12:53 up 4 days, 5:45, 1 user, load average: 313.33, 418.36, 522.87
Tasks: 501 total, 5 running, 496 sleeping, 0 stopped, 0 zombie
%Cpu(s): 33.5 us, 50.9 sy, 0.0 ni, 15.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 19650371+total, 46456320 …Run Code Online (Sandbox Code Playgroud) linux central-processing-unit cpu-usage high-load load-average
我们有一个由 2 个物理和 2 个虚拟 Citrix 服务器组成的 Citrix PS4.0 场。由于达到 100% 的 CPU 使用率,它们中的任何一个在某些时候最终都会降低性能。当这种情况发生在任一 VMware 服务器上时,我可以在 Virtual Infrastructure Client 中看到 CPU 使用率激增。
这不是与用户数量相关的负载问题,因为它可能随时发生在任意数量的用户身上。
用户运行的是共享桌面,而不是应用程序。桌面上安装的应用程序是标准的办公应用程序(Word、Excel、Outlook),通过 Bluecoat 代理和几个行业特定的应用程序限制 Internet Explorer 访问。
可以使用哪些工具进行故障排除和诊断问题的根源?一旦服务器达到 100% CPU,就无法登录并查看哪个进程正在消耗所有资源。唯一的办法是硬重置机器。所有服务器都按计划在每天凌晨 4 点重新启动。
注意:我已经使用默认配置选项和日志记录活动在所有 Citrix 服务器上安装了 ThreadMaster。日志没有揭示问题的根源。
编辑
我正在运行 Windows Server 2008,并且经常有一个进程将 CPU 使用率飙升至 25% 或更多,并导致许多速度变慢的问题。该服务器正被大约 30 个用户远程使用,如果我没有足够快地发现这个问题,他们在工作时会非常沮丧。
如果这个过程变得过于活跃并导致问题,有没有办法自动监控和报告?实际过程是一个 exe 文件,它作为 PDA 远程用户的 Web 应用程序的一部分运行。
你能让虚拟机在 32 位 CPU 上运行吗?据我所知,除了支持虚拟机的下一代 Pentium 4 之外,目前还没有一个 32 位 CPU。通过虚拟机,我的意思是来宾操作系统不是在半虚拟化设置中运行,并且主机和来宾操作系统之间通过硬件进行分离。
就是想。
编辑:在深夜写这篇原始帖子......感谢您指出“管理程序”不是硬件中的东西;为清晰起见重新编辑。
有没有直接的说法?
我正在运行 32 位版本的 Kubuntu。
这是我的 cpuinfo。
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Core(TM)2 Duo CPU E6550 @ 2.33GHz
stepping : 11
cpu MHz : 2000.000
cache size : 4096 KB
physical id : 0
siblings : 2
core id : 0
cpu cores : 2
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 10
wp …Run Code Online (Sandbox Code Playgroud) 我完全支持这个话题。
昨天我正在对我正在处理的一些脚本进行分析,所花费的时间单位是“ CPU 秒”。谁能用它的定义提醒我?
例如,对于我得到的一些分析:200.750 CPU seconds。那是什么意思?在其他情况下,对于耗时的过程,我得到:-347.977 CPU seconds,一个负数!
无论如何,我可以将那个时间转换为日历时间吗?
干杯,
load-average ×2
windows ×2
amazon-ec2 ×1
citrix ×1
cpu-usage ×1
hardware ×1
high-load ×1
kubuntu ×1
linux ×1
monitoring ×1
scalability ×1
usage ×1
vmware-esxi ×1
xeon ×1