并行任务不适用于VM Workstation中的Ubuntu 12.04

时间:2012-06-24 00:15:43

标签: linux bash ubuntu parallel-processing ubuntu-12.04

在运行Ubuntu 12.04的虚拟机中发生了一些奇怪的事情。以下脚本,我之前在7个内核上共同运行7个任务成功使用,不再适用了!

Prog out file1.bin fids 72000 > logs/fitlog1.log &
Prog out file2.bin fids 72000 > logs/fitlog2.log &
Prog out file3.bin fids 72000 > logs/fitlog3.log &
Prog out file4.bin fids 72000 > logs/fitlog4.log &
Prog out file5.bin fids 72000 > logs/fitlog5.log &
Prog out file6.bin fids 72000 > logs/fitlog6.log &
Prog out file7.bin fids 72000 > logs/fitlog7.log &

Prog是可执行文件名。

之前(2天前),当我运行此脚本时,每个应用程序在单个核心上执行并且记录正常。 现在,应用程序不再同时启动。 2或3个核心启动然后停止,只有1个核心继续运行。

有人可以解释一下这种行为吗?

System是Windows 7上VM Workstation上的Ubuntu 12.04。日志文件中根本没有显示任何错误。

感谢您的任何努力。

1 个答案:

答案 0 :(得分:0)

太模糊的描述btw。应该有很多奇怪行为的可能性,但一般来说,当你想将Linux上的进程绑定到特定的CPU核心时,请从以下开始:

man cpuset

否则内核会尝试循环分配负载,并且进程在运行期间会在核心之间“移动”。