其他分享
首页 > 其他分享> > 使用Screen和Bash进行多处理

使用Screen和Bash进行多处理

作者:互联网

使用SSH在学校的不同节点上运行python脚本.每个节点有8个核心.我使用GNU Screen来分离单个进程.

是否更需要:

>运行几个不同的屏幕会话.
>运行单个屏幕流程并使用&在一个bash终端.

它们是等价的吗?

我不确定我的实验编码是否很差并且花费了过多的时间(非常可能)或者我选择使用1.这会大大减慢这个过程.谢谢!

解决方法:

有了bash,我想你正在做这样的事情(假设/ home在网络安装下):

#!/bin/bash    

for i in {1..$NUM_NODES}
do
    ssh node$i 'python /home/ryan/my_script.py' &
done

从单个屏幕后面启动此脚本将正常工作.启动多个屏幕会话不会提高性能,但会增加启动多个屏幕的额外复杂性.

请记住,有更好的方法可以在群集中分配负载(例如,如果其他人正在耗尽所有node7,您需要一种方法来检测它并将您的工作发送到其他地方).我使用过的大多数集群都安装了Torque,Maui或qsub命令.我建议给那些看看.

标签:python,bash,multiprocessing,numerical-methods
来源: https://codeday.me/bug/20190703/1364008.html