面向 LLM 的 Linux 服务器检查清单
- 形成摸清 Linux 服务器的基本思路。
- 判断服务器是否支持 LLM 部署或训练,以及可能的瓶颈。
拿到一台新的 Linux 服务器后,第一件事通常不是立刻部署模型,而是先摸清这台机器的基本情况。
检查思路:
- 先看这台机器有什么资源
- 再看这些资源能不能支撑 LLM 部署或训练
- 最后判断哪里可能成为瓶颈
1. 为什么要先摸清服务器
同样一台“8 卡机器”,实际可用性可能差很多。
差异通常不只在 GPU 型号,还在这些地方:
- CPU 核数够不够
- 内存和 swap 是否正常
- GPU 驱动、CUDA 是否可用
- 磁盘空间是否足够放模型和数据
- 网络能不能支撑模型下载、分布式训练或服务访问
如果不了解服务器的这些基础信息,后面很容易遇到几类问题:
- 模型还没启动就 OOM
- 训练速度很慢,但一时看不出瓶颈在哪
- 多卡看起来都在工作,实际通信效率很差
- 服务能跑,但吞吐、延迟和稳定性都不达标
所以更实际的做法是:先用几条命令把机器轮廓摸清,再决定下一步。
2. 基本检查清单
基本检查围绕 系统基础信息 / GPU / 内存 / GPU / 存储 / 网络 这6方面来展开:
2.1 系统基础信息
这部分容易被忽略,但很实用。
常用命令:
uname -a
cat /etc/os-release
hostnamectl
date
至少要确认:
- 当前发行版和内核版本
- 系统时间是否正确
- 后续安装驱动、CUDA、Docker 时是否有兼容性风险
2.2 CPU
重点看:
- CPU 型号
- 核心数、线程数
- 架构
- NUMA 拓扑
- 当前负载
常用命令:
lscpu
nproc
cat /proc/cpuinfo | grep "model name" | head -1
uptime
top
实践上可以先看两件事:
- 核数够不够支撑数据处理、tokenization、日志和推理服务调度
- 是否有 NUMA,避免后面多卡训练时踩到跨 NUMA 的性能坑
2.3 内存
重点看:
- 总内存
- 可用内存
- swap 是否开启
- 内存压力是否异常
常用命令:
free -h
cat /proc/meminfo | head
vmstat 1 5
实践上最先看:
- 内存是不是明显偏小
- swap 是否已经被大量使用
- 如果还没跑任务,机器内存就很紧张,后面大概率会出问题
2.4 GPU
重点看:
- GPU 型号
- GPU 数量
- 单卡显存
- 驱动版本
- CUDA 版本
- GPU 利用率、显存占用、温度
常用命令:
nvidia-smi
nvidia-smi -L
nvidia-smi topo -m
watch -n 1 nvidia-smi
对 LLM 来说,GPU 是最关键的一层。
先回答这几个问题:
- 这是消费级卡还是数据中心卡
- 单卡显存有多大
- 多卡之间有没有 NVLink 或更好的互联
- 驱动和 CUDA 能不能支撑后续框架
如果服务器没有 NVIDIA GPU,也要先确认你后续要用的框架是否支持当前硬件。
2.5 磁盘和存储
重点看:
- 总容量
- 剩余空间
- 挂载点
- 盘类型
- 数据盘和系统盘是否分开
常用命令:
lsblk
df -h
mount | head -20
du -sh /var/log
du -sh /path/to/model
实践上常见问题不是“没盘”,而是:
- 模型权重放得下,但数据集和缓存放不下
- checkpoint 写盘太慢
- 系统盘被日志或缓存打满
如果要做训练,存储性能通常比“总容量”更重要。
2.6 网络
重点看:
- 网卡信息
- IP 地址
- 默认路由
- 连通性
- 开放端口
常用命令:
ip addr
ip route
ping -c 4 8.8.8.8
ss -tulpen
ethtool <网卡名>
实践上主要看:
- 能不能访问外网下载模型和依赖
- 服务监听端口是否正确
- 多机时网络是否稳定
如果是单机部署,网络问题更多影响模型下载和 API 服务访问。
如果是多机训练,网络质量会直接影响训练效率。
3. LLM 部署和训练时的重点关注
同样是检查服务器,做 LLM 部署和做训练,重点不完全一样。
1. 如果是做 LLM 部署
要优先关注:
- GPU 显存是否放得下模型权重
- 上下文长度和并发下,KV Cache 会不会成为瓶颈
- 推理框架和驱动、CUDA 是否兼容
- 磁盘是否够放模型、量化版本和缓存
- CPU 和内存是否够支撑 tokenizer、前后处理和服务调度
一个很实用的判断方法是:
- 先看模型权重能不能放下
- 再看长上下文和并发时 KV Cache 会不会把显存吃满
- 最后再看吞吐和延迟
很多时候,部署失败不是因为“模型太大”,而是因为低估了 KV Cache 和运行时开销。
2. 如果是做 LLM 训练
要优先关注:
- GPU 型号、显存、卡数
- 多卡互联方式
- CPU 核数和内存是否够数据加载
- 磁盘吞吐是否够数据集和 checkpoint
- 多机网络是否足够稳定
训练场景下,下面这些问题尤其常见:
- GPU 很强,但 CPU 太弱,数据加载跟不上
- 显存够,但卡间通信差,扩展效率低
- checkpoint 频繁写盘,结果被磁盘拖慢
- 多机网络抖动,导致训练不稳定
所以训练时不要只盯着 GPU 算力,还要一起看 CPU、内存、存储和网络。
3. 推荐实践
如果你刚拿到一台机器,可以先按下面顺序过一遍:
uname -a、cat /etc/os-release看系统版本lscpu、free -h看 CPU 和内存nvidia-smi、nvidia-smi topo -m看 GPU 和拓扑lsblk、df -h看磁盘和挂载ip addr、ip route、ss -tulpen看网络top或htop看当前负载
跑完这几步,通常就能判断:
- 这台机器更适合推理还是训练
- 主要瓶颈可能在哪
- 下一步应该先装环境、先压测,还是先换机器
FAQ
服务器有很多 GPU,就一定适合做 LLM 吗
不一定。还要看显卡架构、显存大小、卡间互联、驱动环境、CPU、内存和磁盘等来能做出综合判断。
显存够放模型,就说明可以稳定部署
不一定。部署还要考虑 KV Cache、并发、上下文长度和运行时开销。
做训练时最重要的就是 GPU
GPU 很重要但不是唯一关键项,CPU、内存、存储和网络也会成为明显瓶颈。
小结
掌握一台 Linux 服务器,不是先背很多命令,而是先知道自己要确认什么。
对 LLM 场景来说,最重要的是把 CPU、内存、GPU、磁盘、网络几方面一起看,而不是只盯着模型参数量或显卡型号。