给予:
BIG0
,BIG1
等一些非常耗时的工作,以及一堆fast0
,fast1
等小型快速工作
问题:
假设BIG*
作业花费 2小时,而fast*
作业花费 1小时。如何指示GNU Parallel按时间和核心分配作业,如下所示:
time[h] CPU[0] CPU[1]
0 BIG0 BIG1
1 : :
2 fast0 fast1
而不是如下所示?
time[h] CPU[0] CPU[1]
0 BIG0 fast0
1 : fast1
2 BIG1
3 :
最后一次设置将花费一个小时以上。
答案 0 :(得分:1)
一种可行的方法可能是按照预期的时间对您的工作进行排序,然后再提交给 GNU Parallel ,首先是大的工作:
parallel ... ::: BIG* fast*