快科技7月1日消息,如今的AI加速计算卡配备的HBM高带宽内存(显存)容量越来越大,AMD、NVIDIA都都做到了惊人的192GB,而且即将增加到288GB,没想到给Linux造成了不小的困扰。
AMD工程师Sameul Zhang在最新的Linux补丁中透露,如果一套系统配备多块AMD Instinct加速卡,超大容量显存会导致系统无法休眠。
比如某台服务器安装了八块AMD Instinct加速卡,单卡显存192GB,总计达到1.5TB,Linux就没办法正常休眠了。
问题出自Linux在休眠过程中的GPU显存处理方式。
系统休眠时,所有的GPU显存都会卸载到系统内存,一般通过GTT(图形转换表)或者共享内存(shmem)。
然后,系统内核复制所有系统内存中的数据(包括处于evicted状态的显存),创建一个休眠镜像,放入第二个内存区域,用于后续结束休眠的时候重新写入磁盘。
简单地说,如果有1.5TB显存,休眠系统镜像就会最大达到3TB,从而超过2TB系统内存容量,自然无法再休眠。
当然,这个问题不止是AMD,任何大显存的GPU加速卡并行都会出现。
Sameul Zhang为此提出了自己的解决建议,主要是减少休眠时所需复制的内存容量,但这会导致休眠恢复时间过长,可能接近1个小时,所以又加入了一个新补丁,跳过一些步骤,从而大大缩短休眠恢复的时间。