作者sorryChen (陈扬和)
站内Programming
标题多CPU的机器OS如何align jobs?
时间Sun Jun 28 03:41:15 2009
如果我在多CPU上的机器, 比如说8 或 16个
for i in {0..1} do { time ./myprogram ${i}.input; } 2> ${i}.time;
这样话 每次call myprogram时 会自动assign 给一个cpu吗
还是全部的都只会在一个上跑..
现在的OS应该有聪明到会自己assign吧 但这样一起跑..
会不会比一个一个跑的CPU hours 多呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 128.125.87.33
※ 编辑: sorryChen 来自: 128.125.87.33 (06/28 03:41)
1F:→ dolphinus:不会. 请参考 OpenMP 的语法. 122.116.74.57 06/28 03:42
2F:→ sorryChen:不会是说 只会在一个CPU上跑.. 128.125.87.33 06/28 07:34
3F:→ sorryChen:那是说多个CPU的机器..除非OPEN_MP 128.125.87.33 06/28 07:35
4F:→ sorryChen:另一个CPU完全空着? 我只会用C++中写 128.125.87.33 06/28 07:36
5F:→ sorryChen:如何在Shell level用多个CPU? 128.125.87.33 06/28 07:36
※ 编辑: sorryChen 来自: 128.125.87.33 (06/28 07:37)
6F:→ ggg12345:align jobs 是指甚麽 ? 140.115.4.12 06/28 08:54
7F:→ sorryChen:assign 只是说跑一次 ./myprogram 128.125.87.33 06/28 09:38
8F:推 ggg12345:Shell启动的执行程式都是一个process,每 140.115.4.12 06/28 12:46
9F:→ ggg12345:个process在OS管理下在对称式多处理机就 140.115.4.12 06/28 12:47
10F:→ ggg12345:资源管理立场由OS将所有process轮派给所 140.115.4.12 06/28 12:49
11F:→ ggg12345:有的cpu去跑,没事干的cpu跑idle process. 140.115.4.12 06/28 12:53
12F:→ sorryChen:所以是说每个process 都会伦到各个CPU上 128.125.87.33 06/29 00:42
13F:→ sorryChen:但应该会想办法利用每个CPU吧 128.125.87.33 06/29 00:43