实现CPU最佳性能必须考虑-Ready time

Ready time是vCPU在队列中等待pCPU(或物理内核)准备执行其指令的时间。调度程序处理队列,当存在争用并且处理资源受到压力时,队列可能变长。

Ready time描述了特定world在队列中等待的最后观察期的大小。特定world的Ready time(例如,vCPU)表示在该时间间隔内等待队列访问pCPU的时间。它可以表示为每个vCPU在观察时间内的百分比,并且在统计上,它不能平均为零。

因此,Ready time的值表示VM被拒绝访问它想要使用的pCPU资源多长时间。这使它成为一个很好的绩效指标。

当多个进程尝试使用相同的物理CPU时,该CPU可能无法立即可用,并且进程必须等待ESXi主机才能为其分配CPU。

CPU调度程序管理对主机系统上的物理CPU的访问。CPU使用率或CPU就绪的短暂峰值表示您正在充分利用主机资源。但是,如果两个值都一直很高,则主机可能过载并且性能可能很差。

通常,如果VM的CPU使用值高于90%且CPU就绪值超过每个vCPU 20%(大量vCPU),则性能会受到负面影响。

此延迟可能会影响客户机操作系统的性能以及VM内应用程序的运行。

vSphere中如何监控其Ready time

1.打开vSphere Web Client。

2.在主屏幕上,导航到“ 主机和群集”。

3.展开左侧导航列表。

4.导航到其中一个CPU耗尽的VM。

5.导航到“ 监控”选项卡。

6.导航到“ 性能”选项卡。

7.导航到“ 高级”视图。

8.单击图表选项。

9.从图表指标导航到CPU。

10.导航到VM对象,仅选择以MHz为单位的Demand,Ready和Usage。

调查潜在CPU问题时的关键指标如下:

Demand:VM尝试使用的CPU数量。Ready:实际允许VM使用的CPU数量。Usage:VM已准备好运行但(无法完成工作)的时间量无法实现,因为vSphere无法找到运行VM的物理资源。11.单击“ 确定”。

在以下屏幕截图中,您将看到VM的高准备时间:

请注意此VM要求的CPU数量,并将其与VM实际能够获得的CPU使用量进行比较(以MHz为单位的使用率)。VM要求比目前允许使用的更多。

请注意,VM也看到了大量的就绪时间。

准备时间大于10%可能是一个性能问题。但是,一些对CPU敏感的应用程序和VM可以具有更高的就绪时间值,并且仍然可以令人满意地运行。

如何运作的

当vCPU准备好运行时(即,它有一个要执行的任务),vCPU处于就绪状态。但由于vSphere调度程序无法找到运行VM的物理主机CPU资源,因此无法运行。提升就绪时间的一个潜在原因是VM受用户设置的CPU限制或资源池限制的约束,报告为最大限制MLMTD)。由于限制而被拒绝的CPU量被测量为度量最大限制。

在resxtop/esxtop和vCenter Server 之间以两个不同的值报告就绪时间。在resxtop/esxtop中,以易于理解的百分比格式报告。5%的数字意味着VM花费了其上一个采样周期的5%,等待可用的CPU资源(仅适用于1-vCPU VM)。在vCenter Server中,将就绪时间报告为时间度量。例如,在vCenter Server的实时数据(每20,000毫秒生成样本值)中,报告的数据为1,000毫秒,准备时间为5%。据报道,10%的就绪时间为2,000毫秒。

虽然高就绪时间通常表示CPU争用,但这种情况并不总是需要采取纠正措施。如果就绪时间的值接近CPU使用的时间量值,并且如果CPU活动偶尔出现增加的就绪时间但是长时间不持续,则这可能不表示性能问题。短暂的性能影响通常在可接受的性能差异范围内,并且不需要管理员的任何操作。

相关文章

学习编程是顺着互联网的发展潮流,是一件好事。新手如何学习...
IT行业是什么工作做什么?IT行业的工作有:产品策划类、页面...
女生学Java好就业吗?女生适合学Java编程吗?目前有不少女生...
Can’t connect to local MySQL server through socket \'/v...
oracle基本命令 一、登录操作 1.管理员登录 # 管理员登录 ...
一、背景 因为项目中需要通北京网络,所以需要连vpn,但是服...