使用不同数量的多重工作者时的不同行为

Rom*_*rik 10 windows multicore r

我正在玩我的程序(试图多核几个部分),我注意到"CPU历史"看起来有点不同,取决于我开始的工人数量.2-4名工人似乎产生了"稳定"的工作流程,但是固定5-8名工人会产生不稳定的行为(从零到最大,见图片).我应该指出,所有的运行都以"平滑"的最大容量开始(例如2个核心只有25%),并且仅在一分钟左右后开始出现不稳定的行为.这是怎么回事?我有4个核心处理器,你认为这种行为可能与这个事实有关吗?

我希望你能看到这些照片.

2名工人 2名工人

3名工人 3名工人

4名工人 4名工人

5名工人 5名工人

6名工人 6名工人

7名工人 7名工人

8名工人 8名工人

Jor*_*eys 11

这是具有超线程的四核的经典行为.R不会因超线程而获益,因为它通常使用完整的核心进行计算.因此,如果一个物理处理器产生2个逻辑处理器,则处理器必须在两个线程之间连续切换,这解释了模式.

对于R,我在计算机上推迟了超线程.相反,它没有帮助.如果R正常工作时只使用一个线程,则会丢失容量(最大值为12.5%而不是25%).