如何使用不同目录对作业进行多进程运行

时间:2019-06-14 15:34:29

标签: python python-3.x python-multiprocessing

我想使用多重处理在同一时间在不同目录中运行某个进程,并在进程之间平均分配线程。

我已经写了一些函数来汇总工作,但是我不清楚应该如何开始。

import os
import glob
from multiprocessing import Pool

os.system("source /usr/local/gromacs/bin/GMXRC")

def run_gromacs_simulation():
  pdb2gmx()
  add_ions()


if __name__=='__main__':
   with Pool(4) as p:

    def pdb2gmx():
        pdb2gmx="gmx pdb2gmx -f *.pdb -o conf.gro -ignh <<END \n"
        pdb2gmx+="1\n"
        pdb2gmx+="1\n"
        os.system(pdb2gmx)
        os.system("gmx editconf -f conf.gro -o pbc.gro -c -d 0.8")
        os.system("gmx solvate -cp pbc.gro -cs spc216.gro -o solvated.gro -p topol.top")
        os.system("gmx grompp -f ions.mdp -c solvated.gro -p topol.top -o ions.tpr")

我只想在同一时间通过多处理并划分线程在不同目录中运行os.system()。

0 个答案:

没有答案