抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

真难搞,已老实。好想要A100喔

昇腾简介

华为设计发布了AI处理器(NPU),采用达芬奇架构,全面对标英伟达GPU并为人工智能提供全流程支持。我们平时也许对英伟达架构和其他开源AI框架比较熟悉,那么这里给出几个关键词的大概对应来更好地理解昇腾软硬件平台。

首先是硬件层:

Atlas 硬件 (基于 Huawei Ascend 核心) > Nvidia GPU (A100, H800..)

其次是计算架构:

CANN > CUDA

华为同样也有自己的深度学习框架,但也对第三方框架做出了适配:

MindSpore 晟思 > Tensorflow / Pytorch

服务器现状

现有 Atlas 800 训练服务器,其拥有 8个 Atlas 300T(即 Ascend 910)。

服务器本身并不是华为,而是来自烽火超微/长江计算FitServer G420X V5,在网络上鲜有资料。

服务器运行 BigCloud Enterprise Linux For Euler 21.10系统(应该就是openEuler,在中移官网上也显示出其本质是openEuler)。

安装 CANN

CANN 分为几个版本,Toolkit是最全量的,其支持训练、推理、模型转换及其他应用开发。我们下载 Ascend-cann-toolkit_8.0.RC2.alpha001_linux-x86_64.run 并用 SFTP 上传到服务器。

[已失败] 离线安装依赖

根据手册,我们需要为系统安装第三方依赖,但服务器并无互联网连接。我们在本地启动一个Docker,并利用本地Docker下载包,上传到服务器安装:

1
2
docker pull centos
docker run -d -i -t --name bclinux centos /bin/bash

Docker 命令行知识

-d以后台模式运行容器

-p 宿主机端口:容器端口 将宿主机的端口映射到容器的某个端口

-i 提供交互式bash(即使没有连接也保持STDIN开启)

-t分配一个伪TTY

这里回顾发现装错了,应该装 openEuler 的镜像的。不过这玩意真的有 Docker Image 吗?

BigCloud Enterprise Linux是中移基于CentOS自己包装的系统。因此我们装个CentOS8即可。这里记录一下CentOS出现的一些yum问题,由于CentOS已经停止更新,我们可以通过以下方式将其镜像设置为阿里云:

1
2
3
4
5
minorver=8.5.2111
sed -e "s|^mirrorlist=|#mirrorlist=|g" \
-e "s|^#baseurl=http://mirror.centos.org/\$contentdir/\$releasever|baseurl=https://mirrors.aliyun.com/centos-vault/$minorver|g" \
-i.bak \
/etc/yum.repos.d/CentOS-*.repo

接下来我们使用:

1
yum install --downloadonly XXX --downloaddir="./pkgs"

就可以仅下载不安装rpm包了。

将安装好的rpm包拷贝到宿主机:

1
docker cp centos:/root/pkgs pkgs/

并使用rpm -ivh/-Uvh安装。

完全失败了。因为系统已经安装了很多包,同时需要安装的包也很多,相互间产生了循环依赖,手动解决的代价很大。

访问校园镜像

说服了服务器管理员允许集群访问校园镜像站。

还是社工好用啊.jpg

另:学校镜像站的IP地址是一个公网IP,在唐仲英楼。

选择推理框架

已经有了算子,现在只需要推理框架就可以部署模型了。考虑以下几个备选:

  • FastChat 只支持使用单个 Ascend NPU 进行推理,能跑但效率感人,失败
  • MindIE 没想到华为自己的框架都不支持这款服务器,失败
  • vLLM 不支持 CANN

暂时没有发现其他的框架。搁置。

评论