硬件:Micro-Star International Co., Ltd. Vector 16 HX AI A2XWIG
显卡:nvidia5080
处理器:Intel® Core™ Ultra 9 275HX × 24
内存:16GiB
磁盘:1T
系统:Ubuntu22.04
问题描述:
现在需要通过vllm本地部署RoboBrain2.0-7B大模型,但由于内存只有16GB,前几次的编译均以内存爆满电脑死机为结果。在未设置虚拟内存前,无论设置export MAX_JOBS=8或4的都会死机。所以通过创建16GB虚拟内存来保证编译不会死机,虽然编译会慢一点。下面是详细步骤
1. 检查并停用当前的 Swap
首先,确认一下当前的 swap 状态。
sudo swapon --show
这个命令会列出所有正在使用的交换分区或文件。可能会看到类似下面的输出:
NAME TYPE SIZE USED PRIO
/swapfile file 2G 0B -2
接下来,停用它:
sudo swapoff /swapfile
2. 删除旧的 Swap 文件
停用之后,就可以安全地删除了。
sudo rm /swapfile
3. 创建新的 16GB Swap 文件
现在可以执行命令来创建一个 16GB 的新文件了。使用 dd 命令可以,但有一个更快的命令 fallocate,推荐使用,因为它会立即分配空间,而不是慢慢地写零。
推荐方式 (更快):
sudo fallocate -l 16G /swapfile
或者使用你其余教程所说的 dd 命令也可以:
sudo dd if=/dev/zero of=/swapfile bs=1M count=16384 status=progress
可以在
dd命令后面加了status=progress,这样可以看到创建进度。
4. 设置正确的权限
这一步很重要!交换文件只应该被 root 用户读写。
sudo chmod 600 /swapfile
5. 将文件格式化为 Swap 空间
sudo mkswap /swapfile
6. 启用新的 Swap 文件
激活刚创建的交换空间。
sudo swapon /swapfile
7. 验证是否成功
再次检查 swap 状态,确认新的 16GB 空间已经启用。
sudo swapon --show
或者使用 free 命令查看,你会看到 Swap 总量增加了 16GB。
free -h
8. 使其永久生效
为了确保每次重启后这个 swap 文件都能自动挂载,需要将它添加到 /etc/fstab 文件中。
首先,备份一下fstab 文件,以防万一:
sudo cp /etc/fstab /etc/fstab.bak
然后,将 swap 文件的配置信息追加到 /etc/fstab 的末尾:
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
至此,系统就拥有了 16GB 的交换空间,再次尝试编译通过。

2万+

被折叠的 条评论
为什么被折叠?



