跳到主要内容

环境准备

摩尔线程GPU硬件环境

部署Dense模型需要一台S5000服务器至少要4张卡,推荐8张卡。

执行 mthreads-gmi -q | grep -i "MTBIOS" 命令,获取设备MT BIOS 版本号,

确定版本号与当前推荐版本一致。命令返回示意图如下:

执行 mthreads-gmi 命令,确认GPU可识别,GPU数量与待测试数量一致。命令返回示意图如下:

MUSA软件栈环境

执行 musa-deploy 命令,确认 MUSA 软件栈版本与当前推荐版本一致。

注意:如果所有测试都是在容器完成,宿主机上只需要关注Driver、MTLink、container_toolkit的版本信息;MUSA SDK(MUSA Toolkits)、PyTorch、Torch MUSA、torchvision、torchaudio的相关版本用镜像容器内的版本与当前推荐版本对齐。也就是说在宿主机和容器内要分别执行一次,共两次musa-deploy,分别比对相应版本。

关于 musa-deploy 工具更多的使用方式请参考:

https://docs.mthreads.com/musa-deploy/musa-deploy-doc-online/introduction/

常见依赖问题与解决方案

在部署 vLLM-MUSA 过程中,可能会遇到以下依赖环境问题,请提前确认并解决:

 musa_toolkits 环境版本要求

  • 必需工具包musa_toolkits_rc4.3.1.tar.gz(或更高兼容版本)

  • 包含组件:MUSA 编译器 mcc、MUSA 运行时库、开发头文件等

musify-sample-main 依赖缺失

  • 问题:运行 musify-text 时报错 ModuleNotFoundError: No module named 'ahocorapy'

  • 原因:缺少 Python 库 ahocorapy

  • 解决(安装后的运行结果)

./musify-text -c reduce.cu
Traceback (most recent call last):
File "/root/s5000-workshow-test/musify-sample-main/./musify-text", line 11, in <module>
from ahocorapy.keywordtree import KeywordTree
ModuleNotFoundError: No module named 'ahocorapy'

pip install ahocorapy
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Collecting ahocorapy
Downloading https://pypi.tuna.tsinghua.edu.cn/packages/e6/fa/ad9a6820a33c18e898b9f0a88aa38db34611f2ebbac46e7516d3a068bde1/ahocorapy-1.6.2-py2.py3-none-any.whl (8.3 kB)
Collecting future (from ahocorapy)
Downloading https://pypi.tuna.tsinghua.edu.cn/packages/da/71/ae30dadffc90b9006d77af76b393cb9dfbfc9629f339fc1574a1c52e6806/future-1.0.0-py3-none-any.whl (491 kB)
Installing collected packages: future, ahocorapy
Successfully installed ahocorapy-1.6.2 future-1.0.0

/usr/local/musa/bin/musify-text -c reduce.cu
use mapping: /usr/local/musa/bin/../tools//include.json
use mapping: /usr/local/musa/bin/../tools//general.json
[INFO] [2026-01-30 14:21:32,257] Processing reduce.cu
[INFO] [2026-01-30 14:21:32,259] CONVERTED refs by names:
cuda_runtime.h => musa_runtime.h: 1
cudaError_t => musaError_t: 1
cudaSuccess => musaSuccess: 1
cudaGetErrorString => musaGetErrorString: 1
cudaMalloc => musaMalloc: 2
cudaMemcpy => musaMemcpy: 2
cudaMemcpyHostToDevice => musaMemcpyHostToDevice: 1
cudaEvent_t => musaEvent_t: 1
cudaEventCreate => musaEventCreate: 2
cudaEventRecord => musaEventRecord: 2
cudaGetLastError => musaGetLastError: 2
cudaDeviceSynchronize => musaDeviceSynchronize: 2
cudaEventSynchronize => musaEventSynchronize: 1
cudaEventElapsedTime => musaEventElapsedTime: 1
cudaMemcpyDeviceToHost => musaMemcpyDeviceToHost: 1
cudaEventDestroy => musaEventDestroy: 2
cudaFree => musaFree: 2
[未激活,试用期剩144天][root@node119 ~/s5000-workshow-test/musify-sample-main]# ls
build.sh musify-text README.md reduce.cu reduce.cu.mt
[未激活,试用期剩144天][root@node119 ~/s5000-workshow-test/musify-sample-main]# ./build.sh
正在编译 reduce.mu...
编译成功!
运行: ./reduce
[未激活,试用期剩144天][root@node119 ~/s5000-workshow-test/musify-sample-main]# ./reduce
MUSA Reduce Example
Data size: 1048576 elements
CPU result: 1048576.00

--- Method 1: Basic Reduce ---
GPU result: 1048576.00
Time: 1.309 ms
Error: 0.000000

Reduce operation completed successfully!

fast-gemm-main 环境依赖要求

  • 为避免裸环境中部署musa-sdk、torch、torch_musa、numpy产生兼容性等问题:建议提供使用包含所需环境的docker进行测试(缺少依赖所需的docker镜像)
## 依赖要求
### C++ 版本
- MUSA 开发环境(路径: `/usr/local/musa`
- CMake 3.18 或更高版本
- MUSA 编译器 `mcc`
- MUBLAS, MUBLASLt, MUDNN 库
- 支持多架构编译(mp_22 和 mp_31)

### Python 版本
- Python 3.10+
- Torch 2.7.1
- torch_musa 2.7.0
- NumPy < 2.0(推荐 1.26.4)
  • 安装 torch_musa 2.7.0(通常需从摩尔线程官方渠道获取):
pip install torch_musa==2.7.0

系统工具缺失

若存在以下工具确实请及时安装

  • screen 未安装:

    yum install screen
  • musa-deploy 在容器中未预装:

    pip install musa-deploy
  • libmusa.so.4 缺失或损坏(容器内):

docker cp /usr/lib/x86_64-linux-gnu/libmusa.so.4 <容器名>:/usr/lib/x86_64-linux-gnu/