在北京超算(CPU)上运行自己的python机器学习代码

记录自己的踩的坑和在超算上的运行代码的整个流程

第一步:注册账号

        在官网申请免费试测名额,下载并登录客户端后用SSH或者Putty连接(putty选择最低的网络延迟,弹出的窗口点击yes )

第二步:利用秒传或者WinScp将本地文件拖拽到云桌面中

右键点击可新建文件夹存放自己的代码和数据集

第三步:用桌面上的SSH或Putty连接超算

        选择自己的账号连接即可

        第一个坑:SSH无法连接

        解决办法:找客服提供自己的云桌面的账号,或者用官方清理缓存软件修复客户端。工具链接: https://cloud.blsc.cn/fix.html 

putty连接(putty选择最低的网络延迟,弹出的窗口点击yes )

连接超算后输入pwd查看自己的module的储存位置(如图,我的module在public3中)

输入黄框中的命令source一下module,输入

module avail

查看所有module(红框中即为module,下面还有很多module没加载出来)

输入命令加载想要的module(我选择了anaconda3/3-python3.8.3-zyq)

module load anaconda3/3-python3.8.3-zyq

加载好module后(可以用module list查看是否加载好)执行cd  ~/.conda/envs里面ls看看有没有虚拟环境(执行conda  env  list也可以

若没有环境则创建虚拟环境方便安装运行代码需要的特殊库文件

创建虚拟环境过程:

参考该文章:在并行超算使用conda创建虚拟环境 - 无言上善 - 博客园 (cnblogs.com)

使用命令:conda  create  -n  环境名  python=版本

例如:

conda create -n test python=3.7

第二个坑:在我的代码中需要读取.pkl文件,安装3.7的python版本在后续运行代码时提示读取文件报错

解决办法:参考该文章重新创建了一个虚拟环境安装了3.10的python版本,成功解决报错。文章链接:unsupported pickle protocol: 5_This is JULY的博客-CSDN博客

第三个坑:创建虚拟环境时报错

解决办法:输入以下代码执行联网代理

export http_proxy=http://172.16.54.201:8888
export https_proxy=http://172.16.54.201:8888
export ftp_proxy=http://172.16.54.201:8888

输入后重新创建虚拟环境执行

conda  env  list

查看虚拟环境

如果有,则说明创建虚拟环境成功,接下来激活虚拟环境

source activate envs_name

出现[env_name]说明激活成功

之后就可以按照conda里面一下输入命令安装库文件。比如

安装好所需的库文件后就可以编写作业脚本运行代码了。

第四步:编写作业脚本

        第一步:在要运行的.py文件夹创建.sh脚本

vim your_shell.sh

输入:

#!/bin/bash
#SBATCH -p amd_256 
#SBATCH -N 1
#SBATCH -n 1
#SBATCH -c 64

解释:#SBATCH -p amd_256  :选择amd_25架构

        #SBATCH -N 1         :一个节点
        #SBATCH -n 1          :1个进程
        #SBATCH -c 64        :64线程(最少是64)

再输入

最后按 esc 输入:wq 即可保存退出

可以cat看一下sh脚本

实际上就是第三步中加载module 和激活环境的操作,最后再加上运行代码

第二步:提交作业

输入

sbatch your_sh.sh

输入sequeue可以查看作业队列

第三步:查看实时输出信息

提交作业后可用

ll -ltrash

查看是否有输出文件,找到.out文件

输入

tail -f your_file.out

实时查看代码的输出信息。

可以用squeue看作业还在不在队列来确定作业是否结束

作业结束后用vim编辑器打开.out文件即可查看输出信息

vim your_file.out

参考视频:北京超级云客户端和超算资源使用介绍_哔哩哔哩_bilibili

视频里还说明了怎么用桌面的集成软件来提交作业,更加详细

  • 5
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python是一种流行的编程语言,被广泛应用于机器学习领域。随着数据科学的发展,Python机器学习代码和数据成为了热门话题。 Python机器学习代码通常包括数据预处理、模型选择、模型训练和评估等步骤。数据预处理包括数据清洗、特征选择和转换等操作,以准备数据用于模型训练。模型选择方面,Python提供了丰富的机器学习库,如Scikit-Learn、TensorFlow等,可以选择不同的模型,如线性回归、决策树等。模型训练涉及到参数调整、交叉验证等细节,通过Python的库可以实现自动化调整模型参数。最后,模型评估用于检验模型的表现如何,选择最好的模型进行预测。 Python机器学习数据包括许多开源数据集和模型库。例如,MNIST数字手写体数据集是一个常用的基准测试集,图像分类和识别是机器学习中常见的任务。Titanic数据集包含了泰坦尼克号船上乘客生还率的信息,可以用于预测生还率。在模型库方面,TensorFlow是许多人关注的热门库,提供了许多优秀的预训练模型,可以用于文本、图像识别和分类等任务。 总之,Python机器学习代码和数据已经成为了人工智能领域中的热点,有着广泛的应用和发展前景。未来,我们可以期待更多的机器学习代码和数据在Python和其他语言的支持下,为人工智能技术和发展做出更加重要的贡献。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值