零刻AI Max395(Ubuntu 24.04)AMD 显卡监控工具(amdgpu_top)部署手册

同事购置一台零刻AI Max395,已装Ubuntu 24.04,拿来玩耍,打算部署GLM-4.7,需要设置显存突破96GB限制(因Max 395 BIOS中可分配的最大显存为96G,为能够运行101G的模型权重,需通过Linux GTT来设置显存突破96G的限制)。rocm-smi回显信息有限,安装amdgpu_top监控工具。

rocm-smi回显如下:

设置显存突破96GB限制

复制代码
vim /etc/default/grub  #编辑grub文件,修改参数
########
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash amd_iommu=off ttm.pages_limit=31457280 ttm.page_pool_size=31457280 amdttm.pages_limit=31457280 amdttm.page_pool_size=31457280 apparmor=0 zswap.enabled=1 zswap.compressor=zstd zswap.zpool=zsmalloc zswap.max_pool_percent=5"
########
:wq
update-grub  #编辑完成后运行,运行完毕重启
amdgpu_top   #回显如下



____________________________________________________
(base) root@lisinan-GTR:~# amdgpu_top 
amdgpu_top:未找到命令
(base) root@lisinan-GTR:~# ^C

amdgpu_top监控工具部署:

amdgpu_top是专门用于监控 AMD 显卡(适配 amdgpu 驱动)状态的工具,Ubuntu 24.04 默认 apt 软件源中没有该工具 ,无法直接通过apt install安装,需要通过源码编译或 AMD 官方工具包安装,其中源码编译是最稳定、适配性最强的方式。

安装编译amdgpu_top所需的基础工具和依赖库,以 root 身份执行以下命令

复制代码
apt update && apt upgrade -y   # 更新系统软件源
apt install -y git cmake g++ libdrm-dev libncurses-dev libncursesw5-dev pkg-config  # 安装核心编译依赖和依赖库

源码编译安装

复制代码
git clone https://github.com/Umio-Yasuno/amdgpu_top.git  #克隆amdgpu_top官方源码仓库

进入源码目录,创建构建目录并配置编译环境

复制代码
cd amdgpu_top  # 进入源码目录
mkdir build && cd build  # 创建构建目录(规范编译流程,避免污染源码文件)

amdgpu_top采用 Rust 开发,需通过cargo工具构建,而非cmake;

上图是过程中,Rust 已存在导致的 rustup 安装报错

终端提示你系统/usr/bin目录下已经预装了 Rust,而rustup是 Rust 的官方版本管理工具,默认希望成为系统的「唯一 Rust 环境」,因此触发了路径检查警告,最终报错cannot install while Rust is installed。

解决方案:跳过路径检查,直接安装 rustup。无需卸载系统预装的 Rust,通过添加参数跳过路径检查,直接完成安装,后续可通过rustup管理 Rust 版本,避免冲突。

执行带跳过参数的安装命令

复制代码
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y  
#添加 -y 参数,忽略所有可跳过的检查(包括路径检查)
ls -l  
#验证 amdgpu_top 项目文件完整性,查看当前目录下的项目文件(核心文件包括Cargo.toml、src/目录,缺一不可)

配置 Rust 环境变量(安装完成后必须执行)

安装完成后,需要加载环境变量,让系统识别rustup和cargo(Rust 的包管理工具):

复制代码
source "$HOME/.cargo/env"  # 加载环境变量(临时生效,当前终端窗口有效)
echo "source $HOME/.cargo/env" >> ~/.bashrc   #(可选)配置永久生效(后续新开终端也能直接使用)
source ~/.bashrc

验证安装是否成功

复制代码
rustup --version   # 查看rustup版本
rustc --version  # 查看rust版本
cargo --version  # 查看cargo版本

Release 模式编译,如果后续需要长期使用amdgpu_top监控硬件,推荐用 Release 模式编译

复制代码
cargo build --release
#优化编译,去除调试信息,运行效率提升30%以上,编译耗时,耐心等待即可,提示"Finished `release` profile [optimized] target(s) in 1m 27s"即表示编译成功

安装到全局路径(可直接输入amdgpu_top运行)

将可执行文件安装到~/.cargo/bin目录(该目录已配置到环境变量,系统可全局识别),后续在任何目录下输入amdgpu_top即可运行,无需指定路径。

复制代码
# cargo install --path .(--path . 表示当前项目目录)
# 该命令会将编译后的Release版本文件复制到~/.cargo/bin,实现全局调用
cargo install --path .
#安装成功后,全局运行amdgpu_top(任何目录下都可执行)
amdgpu_top

amdgpu_top回显如下:

相关推荐
WHD30627 分钟前
苏州勒索病毒加密 服务器数据解密恢复
运维·服务器
蜡笔小炘40 分钟前
LVS -- 持久链接(Persistent Connection)实现会话粘滞
运维·服务器
生活很暖很治愈1 小时前
Linux——孤儿进程&进程调度&大O(1)调度
linux·服务器·ubuntu
HalvmånEver1 小时前
Linux:线程同步
linux·运维·服务器·线程·同步
Zach_yuan1 小时前
自定义协议:实现网络计算器
linux·服务器·开发语言·网络
岁杪杪1 小时前
关于运维:LINUX 零基础
运维·服务器·php
wdfk_prog2 小时前
[Linux]学习笔记系列 -- [drivers][I2C]I2C
linux·笔记·学习
VekiSon2 小时前
Linux内核驱动——杂项设备驱动与内核模块编译
linux·c语言·arm开发·嵌入式硬件
tianyuanwo2 小时前
企业级NTP客户端配置指南:基于内部NTP服务器的实践
运维·服务器·ntp客户端
芷栀夏2 小时前
CANN开源实战:基于DrissionPage构建企业级网页自动化与数据采集系统
运维·人工智能·开源·自动化·cann