使用集群运行你的python代码

Python018

使用集群运行你的python代码,第1张

集群中有四台主机,master(无GPU),node01,node02,node03(GPU主机),直接运行 python main.py 程序将在CPU中运行。

如下步骤可以运行你的程序:

在你的文件目录下新建一个 lsf.sh 文件,正文写入:

其中 python main.py 是你运行程序的命令,然后:

source activate 你的conda环境

开启环境,用

bsub <lsf.sh 向集群提交运算任务。

即可运行程序,终端会给你一个任务序号,输出文件就是 序号.out 和 序号.err 。

** 其他命令:**

bjobs -W 查看你的任务运行状况

bhosts -gpu 查看集群GPU使用情况。

dask官网地址: https://dask.org/

优势:dask内部自动实现了分布式调度、无需用户自行编写复杂的调度逻辑和程序;通过调用简单的方法就可以进行分布式计算、并支持部分模型的并行化处理;内部实现的分布式算法:xgboost、LR、sklearn的部分方法等

用一句话说:dask就是python版本的spark,是一个用Python 语言实现的分布式计算框架

建议使用:Anaconda3工具包

系统:windows、linux

关于分布式版本安装的注意事项(针对macos)请参考官网:

https://distributed.dask.org/en/latest/install.html

本人实验环境:一台windows机器+3台虚拟化linux服务器,并4台机器均已按照上面步骤安装配置dask

选择Windows机器作为主节点,启动命令:

$ dask-scheduler

控制台显示信息如下:

在其他每台linux机器命令行输入:

$ dask-worker 192.168.1.42:8786

注意:后面跟的ip和端口是主节点的ip和对应服务的端口

通过官网提供的测试例子可以看出dask的确体现了分布式的优势。

如果您觉得有帮助的话,可以扫码,赞赏鼓励一下!谢谢!