我有一个for循环,它在100个不同的输入文件夹上运行Python脚本约100次。 Python脚本在2个核心上效率最高,我有50个可用核心。因此,我想使用GNU并行处理程序一次在25个文件夹上运行脚本。
这是我的for循环(当然是顺序的),Python脚本需要一堆输入变量,包括
我遇到的问题(也许只是众多问题中的第一个)是我的
非常感谢任何提示。
这是我的for循环(当然是顺序的),Python脚本需要一堆输入变量,包括
-p 2
,它在两个核心上运行:for folder in $(find /home/rob/PartitionFinder/ -maxdepth 2 -type d); do
python script.py --raxml --quick --no-ml-tree $folder --force -p 2
done
这是我尝试进行并行化的代码,但它没有起作用:
folders=$(find /home/rob/PartitionFinder/ -maxdepth 2 -type d)
echo $folders | parallel -P 25 python script.py --raxml --quick --no-ml-tree {} --force -p 2
我遇到的问题(也许只是众多问题中的第一个)是我的
folders
变量不是一个列表,因此实际上它只是将 100 个文件夹作为{}
字符串传递给脚本。非常感谢任何提示。