SCNet超算互联网,异构加速卡1 显存16GB试用,海光的国产CPU(x86)+国产GPU(异构加速卡DPU),pytorch深度学习,GPU云服务器长期运行,使用方式介绍

1 背景

废话部分:自己本地显卡不够(4G),同时笔记本整天呼呼转,就算在后台办公、打游戏也干不了...晚上放在实验室还总是害怕着火了(跑满模型,CPU占用都能到100%,温度90度以上...,后来python中控制CPU使用核数和轮换,温度控制在60-70度...)

SCNet超算互联网,https://www.scnet.cn/home/internet/index.html,国家级别、,面向市场的算力服务,有异构加速卡1 显存16GB试用活动。配置有英伟达显卡的,大多数是海光的国产CPU(x86)+国产GPU(异构加速卡DPU),分单卡16G、64G,DTK生态(类似CUDAhttps://www.scnet.cn/help/docs/mainsite/ai/introduction/),在官方镜像中有预装的torch2.4.1+das.opt2.dtk2504(还有torchvision、transformer-engine、triton、vllm等等),常规使用下替换掉英伟达生态完全OK。

官方有大模型部署、微调的教程(https://www.scnet.cn/help/docs/mainsite/ai/practice/llama3/

主要是,,SCNet的操作模式之前没见过,,写这篇文章记录一下,也算是为想使用的同学们提供参考。(下面包含大量个人认知,以官方为准)

推荐阅读:https://blog.csdn.net/m0_37605642/article/details/140907949超算互联网平台SCNet之国产异构加速卡(2024年9月)https://blog.csdn.net/m0_37605642/article/details/140907949

2025年11月

2 平台组成与启动

云服务首先看控制台。应该是分为了“登录节点”和“业务节点”。总体上是一个服务集群,官方的叫法是“登录节点”。

登录节点

“登录节点”就是红色指向的“文件管理”、“命令行(E-Shell)”,即使不开通服务也能够登录使用,主要用于传输文件(模型、数据集等),可以不占用购买算力(显卡、CPU)的时间。

上图是“文件管理”,可见可以直接上传文件(大文件需要用官方的快传客户端),如下:

在右上角的“客户端”处可以下载,直接安装会有“快传”的可选插件。建议对文件的管理均通过这个“文件管理”来完成,因为“登录端”和“业务端”的权限不同。

上图是“命令行(E-Shell)”,就是网页版的登录端界面(可见官方称呼为“登录节点”)

通常我就用它来unzip解压文件.....

如果想用自己的ssh客户端(如Xshell、MobaXterm等),需要以秘钥的形式,MobaXterm可以参考:https://blog.csdn.net/weixin_43225966/article/details/120589388

省流:文件管理+快传——传输文件,“命令行(E-Shell)”——解压文件

业务节点

就是所购买的算力资源。可以选择挂载位置(一般默认即可)

正常购买的参考官方教程https://www.scnet.cn/help/docs/mainsite/ai/quick-start/

异构加速卡1 显存16GB试用活动(找了半天...)需要在“控制台”右侧“运行中任务”的“容器实例”,然后创建容器(见下图和下下图)

深度学习,第一次选择基础镜像——pytorch——2.4.0——......

然后创建运行即可,运行中如下图。

!!!需要注意,基础镜像中会缺少自己想用的工具,需要自己安装。但容器停止后镜像目前不会保存!!!需要在运行时“保存镜像”(如下图)

安装好环境后,后续启动,使用“我的镜像”中即可。

选择Jupyter作为开发工具,同时支持SSH网页端连接,如下,可以发现和业务端界面明显不同。

Jupyter界面如下,便于编辑内容。

环境安装

根据这篇文章(https://blog.csdn.net/m0_37605642/article/details/140907949)所言,

环境内缺失的依赖可以到 光合社区 内查找,下载到用户项目路径,直接pip安装。

pip只安装指定包,不安装依赖包,防止包冲突。

但目前我需要补充的不涉及cuda依赖(国产异构加速卡DPU把cuda依赖都换成了DTK),所以在本地导出requirements.txt文件,然后上传,pip安装即可。

pip freeze > ./requirements.txt

pip install -r requirements.txt

(比较简单,,截图就不放了)

包括安装各种工具(下面这个要用于是“终端多路复用器”,即虚拟的终端管理器,用于断开 SSH 连接后,在 screen 里运行的程序继续在服务器上运行):

sudo apt install screen

需要注意,环境安装完毕后,务必保存镜像到我的镜像!!!容器停止后镜像目前不会保存!!!

(步骤见上面的图)我的镜像如下:

3 测试运行

简单案例

通过Jupyter运行了测试环境的demo,代码直接就是从本地的cuda环境中迁移上去的,可以正常运行。

注意需要重启内核以释放资源(否则GPU会一直在占用着资源...)

项目运行

背景:

现在数据、模型、代码、环境都上传到服务器了。

涉及两个终端:Jupyter终端上启动项目,SSH网页端进行查看。

使用screen进行后台挂载运行模型训练:

参考:有了 screen 和 nohup 跑深度学习代码再也不用愁了 | 退出终端不会影响服务器程序代码运行(2023年3月)https://blog.csdn.net/qq_36667170/article/details/125182257?utm_medium=distribute.wap_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-1-125182257-blog-105742344.237^v3^wap_relevant_t0_download&spm=1001.2101.3001.4242.2

启动

在Jupyter的终端输入screen -S test

会弹出一个名为test的新窗口(虚拟窗口),在新弹出的窗口中(如果涉及使用了虚拟环境的话,记着进入到虚拟环境)使用python命令运行程序即可,如下:

回车,开始执行,可见已经运行起来了:

CPU加载数据比较慢。。。但是模型训练起来速度还是可以的:

使用top查看CPU和内存使用情况:

rocm-smi 查看显卡使用情况:(不高,,毕竟就是个LSTM模型...)

screen -ls查看虚拟终端情况,可见test虚拟终端处于attached (附加) 状态,即Jupyter终端当前正在与一个 screen 会话进行交互的状态:

286是进程号,可用于后期终止进程。

临时退出

现在在Jupyter终端中,按“Ctrl + A + D”,退出虚拟终端,退出后如下,可见回到了原本的终端界面:

screen -ls查看虚拟终端情况,可见test虚拟终端处于detached状态,智谱清言解释如下:

detached (分离) 是一个操作,它让你:

  1. 将 screen 会话从你当前的终端窗口上“摘”下来。
  2. 让这个 screen 会话(以及它里面运行的所有程序)在服务器后台继续运行。
  3. 让你返回到你原来的终端界面,可以继续做其他事情,甚至安全地关闭 SSH 连接。

在SSH网页端查看程序运行状态,screen -r test,回到运行界面:

在非常努力地训练(愉悦)。再次“Ctrl + A + D”退出虚拟终端,或者直接关闭都可以。

如果在一个终端进入了虚拟终端,然后直接关闭,可能虚拟终端仍会附着在第一个终端上,导致第二个终端无法打开,,可以使用下面的命令强制进入(强行“踢掉”当前使用者,自己接入):

screen -D -r test

注意:

需要注意,上述都是在“业务节点”的操作,不是登录节点,登录节点的入口如蓝色部分,“业务节点”的如何在红色部分:

“登录节点”上没有业务信息:

“业务节点”上就OK:

终止

一般这种命令行训练,中间过程、结果数据都是保存到文件系统,比如下面的模型文件,下载到本地即可。

跑完代码后,test虚拟终端就可以退出并清除了。退出test虚拟终端,然后:

kill -15 PID号

  • kill: 向进程发送信号,而不仅仅是“杀死”进程。
  • -15: 这是指定要发送的信号编号。信号 15 是 SIGTERM (Terminate) 的标准编号。
  • PID号: 进程ID (Process ID),一个唯一的数字,用于标识系统上正在运行的特定进程

向进程ID为 PID号 的进程发送一个 SIGTERM (终止) 信号

4 相关命令汇总(便于后面复制粘贴...)

pip freeze > ./requirements.txt

pip install -r requirements.txt

sudo apt install screen

screen -S test

“Ctrl + A + D”退出虚拟终端

rocm-smi

screen -ls

screen -r test

​​​​​​​screen -D -r test

kill -15 PID号

参考文献

https://blog.csdn.net/qq_36667170/article/details/125182257?utm_medium=distribute.wap_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-1-125182257-blog-105742344.237^v3^wap_relevant_t0_download&spm=1001.2101.3001.4242.2

https://blog.csdn.net/m0_37605642/article/details/140907949

https://www.scnet.cn/help/docs/mainsite/ai/quick-start/

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐