燧原AI服务器上装驱动与工具链的配置步骤
燧原加速卡要在AI服务器上正常跑模型,核心是把驱动、固件和工具链按顺序装好,再用厂商提供的管理工具确认设备能被识别。
本文按实际配置顺序展开,适合刚接触燧原卡、需要在物理机或容器里跑推理的运维人员参考。
开始前先核对硬件与系统版本
动手之前先确认三件事,能避免大部分装完不识别的问题:
- 加速卡型号:不同代际的燧原卡对应不同驱动包,混装会导致设备无法枚举。
- 操作系统版本:主流是 Ubuntu 20.04/22.04 或 CentOS 7 系列,内核版本要和驱动包支持的列表对齐。
- 服务器 BIOS 与 PCIe 插槽状态:用
lspci | grep -i enflame确认系统至少能看到卡在总线上。
如果 lspci 里没有燧原相关设备,先排查插槽供电、PCIe 拆分和 BIOS 中 Above 4G Decoding 是否开启,这一步不通过,后面装驱动没有意义。
安装驱动与工具链
驱动包通常由厂商提供,文件名带版本号和系统标识。
以下载到 /root 目录为例:
# 解压驱动包
tar -zxvf enflame-driver-*.tar.gz
cd enflame-driver-*
# 查看安装脚本说明
./install.sh --help
按脚本提示安装内核模块和用户态库。
安装过程中会编译内核模块,需要提前装好 gcc、make 和当前内核对应的 kernel-devel 或 linux-headers。
# Ubuntu 示例:安装编译依赖
apt install -y gcc make linux-headers-$(uname -r)
# 执行安装
./install.sh
安装完成后加载模块并检查:
modprobe enflame_driver
lsmod | grep enflame
工具链一般随驱动包或单独发布,安装后应能使用 efsmi 或厂商指定的管理命令。
具体命令名以你拿到的版本为准,不要照搬其他代际的命令。
用管理工具确认设备状态
驱动装完不等于卡可用,需要用管理工具查看设备列表和健康状态:
efsmi
预期能看到每张卡的编号、温度、功耗和固件版本。
如果只显示部分卡,检查是否有多卡未插紧或 PCIe 链路降速。
固件版本不一致时,按厂商文档统一升级,不要混用不同固件版本跑同一训练任务。
再确认设备节点:
ls /dev | grep -i enflame
有设备节点说明内核层识别正常,下面才能进入框架和容器验证。
容器环境里的验证方式
很多AI服务器用容器跑任务,需要把设备节点和驱动库映射进容器。
以 Docker 为例,启动容器时挂载设备目录:
docker run -it \
--device=/dev/enflame0 \
-v /usr/lib:/usr/lib \
your-image:tag bash
进入容器后重新执行管理命令,确认容器内能看到卡。
如果宿主机正常、容器内看不到,优先检查 --device 参数是否覆盖了全部卡,以及镜像内是否装了对应版本的工具链。
跑通一个最小推理示例前,先确认框架版本与工具链版本匹配。
版本不匹配时,常见表现是初始化阶段报找不到设备或算子加载失败,此时回退到厂商推荐的框架版本组合更稳妥。
常见问题与处理思路
- 安装脚本报内核头文件缺失:确认
uname -r与已安装的 headers 版本一致,不一致时重启进入正确内核或补装对应包。 efsmi提示找不到设备:先看lsmod是否加载了驱动模块,再看dmesg | grep -i enflame是否有枚举失败记录。- 多卡只识别到一张:检查 PCIe 插槽是否被拆分、BIOS 是否限制了可用卡数,必要时逐卡单独测试。
- 容器内工具链报错:确认镜像架构与宿主机一致,驱动库路径已挂载,且容器内没有安装冲突版本。
配置燧原AI服务器的关键不是装完就结束,而是每一步都有对应的检查命令:lspci 看硬件、lsmod 看模块、efsmi 看设备状态、容器内再复查一次。
按这个顺序走,出问题时能快速定位是硬件、驱动还是环境映射的环节。