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

2024-06-09 01:50:18 发布

您现在位置:Python中文网/ 问答频道 /正文

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

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

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(),并进行多处理和线程划分


Tags: import目录进程osconfdef线程system