多线程jruby程序只使用200%的cpu

时间:2013-10-09 23:37:36

标签: ruby multithreading

我正在使用jruby和Debian wheezy x64。当我运行多线程ruby脚本时,htop显示它在视觉上使用多个核心,顶部有条形图,并且它在进程列表中使用200%CPU,但它只使用100%的两个核心容量。我认为可以让更多核心以100%运行,这个数字似乎太方便了,无法通过程序逻辑或其他硬件方面进行瓶颈。操作系统是否限制了我正在使用的可用指令的数量,如果是这样,我该怎么做呢?

当我的意思是在视觉上使用多个内核时,例如:98%核心1,58%核心2和44%核心3.这些百分比不断上下移动到不同的内核集合,但总是总共加起来198 %-200%。使用的核心数超过3个(总共/ 8个),但除了三个核心以外的任何核心仅使用2%或更少的容量。我想我还应该提一下这是一个linode VPS。

我尝试过使用taskset,它已经设置为0-7的cpu掩码。

此外,它看起来好像只能同时运行3个线程,数字会在1到3之间跳跃,有时会持续很短的时间4。

0 个答案:

没有答案