IT之家 前天 09:28
服务器显存过多引发休眠失败,AMD 发布新 Linux 补丁修复
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

AMD发布补丁以解决服务器休眠失败问题,该问题源于配备大量显存和Instinct加速器的服务器。具体来说,当服务器配置8个192GB显存的设备,且系统内存超过2TB时,休眠过程可能因内存不足而失败。工程师解释,休眠时系统尝试将显存迁移至GTT或共享内存,若显存过大,可能耗尽系统内存。修复方案包括释放GTT页面、强制将共享内存页面写入交换磁盘,并跳过解冻阶段的缓冲对象恢复以减少休眠时间。

💡问题根源:服务器配置大量显存(如8个192GB VRAM)和2TB以上系统内存时,休眠过程会将所有VRAM内存迁移到GTT或共享内存中,导致内存不足。

🛠️修复方案一:将GTT迁移到共享内存,以释放GTT页面。

⚙️修复方案二:强制将共享内存页面写入交换磁盘,释放共享内存页面。

⏳修复方案三:跳过解冻阶段的缓冲对象恢复,以减少休眠时间。由于解冻阶段恢复缓冲对象耗时较长(8个dGPU需要50分钟),且后续休眠阶段不使用GPU,因此该步骤并非必要。

IT之家 7 月 2 日消息,科技媒体 phoronix 昨日(7 月 1 日)发布博文,报道称 AMD 公司发布了新的补丁系列,修复了由于显存和 Instinct 加速器过多,导致的系统休眠失败故障。

IT之家援引博文介绍:如果一台服务器配有 8 个带有 192GB 显存的设备,系统内存超过 2TB,那么就会导致系统休眠出现故障。

AMD 工程师 Samuel Zhang 解释称休眠过程中,系统尝试将显存迁移到 GTT 或共享内存,如果显存过多,可能会导致系统内存耗尽。

Samuel Zhang 在最新发布的补丁中表示:

现代数据中心 dGPU 通常配备有非常大的 VRAM。在配备此类 dGPU(192GB VRAM * 8)和 2TB 系统内存的服务器上,休眠会因为内存不足而失败。

根本原因在于,休眠期间所有 vRAM 内存都会被迁移到 GTT 或共享内存。在两种情况下,它们都在系统内存中,内核会尝试将这些页面复制到休眠镜像。在最坏的情况下,这会在系统内存中创建两份 vRAM 内存副本,2TB 的内存不足以存储休眠镜像。

修复方案包括以下两个变更:1. 将 GTT 迁移到共享内存,释放 GTT 页面;2. 强制将共享内存页面写入交换磁盘,释放共享内存页面。

在休眠准备阶段将 GTT 迁移到共享内存后,在解冻阶段恢复缓冲对象需要大量时间(观察到 8 个 dGPU 需要 50 分钟)。

由于后续休眠阶段不需要使用 GPU,这一步骤并非必要。第三个补丁就是跳过解冻阶段的缓冲对象恢复,以减少休眠时间。

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

AMD 服务器 休眠故障 显存
相关文章