Windows Server 2008 R2资源监视器中的CPU使用情况统计信息

我试图通过Resource Monitor在Windows Server 2008 R2中分析HPC R脚本的性能。

我已经提到了这个指南,以获得有关Resource Monitor的CPU选项卡的更多信息,但我仍然有一个问题。

这个服务器(据称)有24个CPU核心,根据检测核心和口碑的R软件function。 在System Information ,显示处理器的2个条目:

在这里输入图像说明

在R脚本中,我告诉函数使用less于可用内核的最大数量的2个函数。 我不确定系统信息中的Core(s)Logical Processor(s)之间有什么区别,但显然R使用的“核心”这个词的含义与这24个逻辑处理器有关。

有一个长期运行的algorithm,目前应该占用CPU“核心”(或逻辑处理器)的22%(即24-2)的100%,这大约是最大CPU使用率的92%。

但是,在Resource Monitor ,CPU使用率只有43%到45%,尽pipe所使用的22个节点中的每个节点都具有在CPU (和4×22 = 88%)下列出的值4 。 是什么赋予了?

我不确定系统信息中的核心和逻辑处理器之间有什么区别

你有两个Intel处理器。 每个芯片上都有6个物理内核。 物理内核本质上是一个自包含的CPU软件包,您可以将多个内核塞到一个模块中。 此外,启用超线程技术,这是英特尔的技术,允许一个物理内核同时执行两个线程。 所以:

2个CPU,

每个CPU 6个核心,

=总共12个物理内核。

超线程使操作系统所看到的逻辑处理器数量翻了一番,

=总共24个逻辑处理器。

值得注意的是,超线程内核并不像物理内核那么强大。 这取决于确切的工作负载,但超线程比一个完整的物理内核低一定的百分比。

尽pipe如此,操作系统将它们视为平等对待它们。

至于为什么你的脚本无法充分利用你的处理能力,这是代码debugging,我们必须能够看到脚本。 或者,它可能是Rscript.exe设置具有一定的亲和力,使其可以安排在某些CPU?

不能没有额外的信息。

这些脚本是做什么的? 也许他们正在等待一些其他资源,比如networking数据包或磁盘I / O,这就是为什么他们不能饱和CPU的瓶颈。 事情是,CPU 很快。 CPU将等待几乎任何其他部分的计算机。 如果其他子系统不能跟上,你将无法最大化你的CPU。