繁体   English   中英

并行运行Python Trainer脚本

[英]Running Python Trainer script in Parallel

我有一个python3命令,它接受输入

  • trainer.py脚本文件名
  • 日期
  • 输入数据文件
  • 输出参数文件

我想在10个(增量即+1 )日期中调用此命令,从而产生10个输出文件。 其他10个命令的其他2个输入文件相同。 我想知道如何跨10个线程(Linux)并行调用这些命令。

选项1:在parallel工具中使用。

GNU parallel是一种Shell工具,用于使用一台或多台计算机并行执行作业。 作业可以是单个命令,也可以是必须为输入中的每一行运行的小脚本。 典型的输入是文件列表,主机列表,用户列表,URL列表或表列表。 作业也可以是从管道读取的命令。 然后,GNU parallel可以拆分输入并将其并行化为命令。

选项2:手动管理作业要在后台运行作业,只需在命令末尾添加&

有用的命令:

jobs -r              # list of running
kill -SIGSTOP %N     # suspend job N
kill -SIGCONT %N     # resume job N

例:

$ sleep 30 & # <- run in background
$ sleep 60 & # <- run in background
$ sleep 60 & # <- run in background

# list of running jobs
$ jobs -r
[1]   Running                 sleep 30 &
[2]-  Running                 sleep 60 &
[3]+  Running                 sleep 40 &

# kill job [3]
$ kill %3

# list of jobs
$ jobs
[1]   Running                 sleep 30 &
[2]-  Running                 sleep 60 &
[3]+  Terminated              sleep 40

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM