2024年9月20日

在进入本文正题之前,先请大家考虑这样一个问题:如果电脑当前正在开机运行中,想要更换显卡怎么办?

有些朋友可能会说,这很简单,先把电脑关机,然后彻底断开电源,最后再打开电脑机箱拆除显卡,进行更换。这种做法是对的,但是大家要意识到,这种做法对于普通的消费级民用电脑来说没什么负面影响,但是,对于大型商业公司的服务器来说就不同了。

因为这些计算设备是承载公司业务的核心,往往都是7X24小时运行的,如果关机(或者重启),哪怕时间非常短,都会造成数据和服务中断,会给公司和广大客户带来非常糟糕的体验。

可能还有朋友会质疑:大型商业公司谁没事会经常去拆、更换显卡?实际情况并非如此,对于大型商业公司来说,这种需求是比较常见的。服务器上所安装的显卡一般都不是用来玩游戏、娱乐的,而是用来辅助、协同计算的。

这样说有些朋友可能还是觉得比较抽象,不好理解,下面再举个简单的例子,很多朋友都知道“挖矿”,挖虚拟货币,这些都需要高性能的显卡。

“挖矿”的本质是执行某种高负荷运算求解的过程,在这种情况下,显卡的唯一目的就是计算,计算性能和算力非常关键,性能越好的显卡算力越高,求解的时间就越短,效率就越高。而对于除了“挖矿”之外的诸如人工智能、AI、机器学习等领域,原理也是一样,显卡的作用,远不止于用来玩游戏、娱乐。

严格来说,这类GPU已经不能再被称之为“显卡”,而应该称之为“协同计算卡”、“AI计算卡”之类的更准确,但是在一般情况下,通俗地称之为“显卡”也没有问题,本文均称为“显卡”,但是大家要明白,这是一种不严谨的称呼。

为了优化、增加算力,在服务器上拆卸、加装、更换或者升级显卡是很常见的事情,尽量避免关机导致业务中断非常重要,有很强的现实需求,如果显卡能够和USB设备一样,可以实现热插拔,这才是最理想的解决方案。

在计算机加电工作,不断电的情况下对显卡进行热插拔,电脑不会蓝屏死机、还能正常运行,以目前的现实情况来看这几乎不可能,但是没有“做不到,只有想不到”,这个美好的愿望现在即将变成现实。

这项创新来自于微软,虽然微软的Windows操作系统在消费级PC上处于绝对的垄断地位,但是在商用服务器领域,Linux才是真正的王者,稳定、对硬件要求门槛低、运行更省资源,这些优势都是Windows操作系统所无法比拟的。

即使是微软,其服务器上采用的同样也是Linux操作系统,和AMD的数据中心显卡(GPU),也需要经常在服务器上拆卸、更换、加装显卡,目前的实际情况和普通电脑一样,也需要先关闭服务器,然后再进行操作。

但是这种做法不符合微软的风格,为此微软开发了一种特殊的驱动程序,可以在Linux服务器上实现热插拔AMD的GPU!——也就是上文所说的,在计算机不关机、不断电的情况下进行操作。

其实,对显卡或者类型的计算卡、加速器进行热插拔一直有厂商在积极探索,AMD在2020年发布了一款驱动程序(相关报道参见图四),可以使用eGFX外置显卡盒将显卡热插拔到Thunderbolt 3端口,但AMD的数据中心显卡不支持这种做法,因此,微软在PCIe接口来实现显卡热插拔是一个相当大的创新。

现在,微软针对Linux的AMD GPU PCIe热插拔补丁已经公开发布,目前还处于测试阶段。该补丁有特定的针对对象,是专为Linux设计的,仅适用于微软的Azure机器,未来是否会扩展支持的平台还没有明确的消息。

对于只安装了一块显卡的普通消费级用户来说,显卡热插拔技术的实际意义很有限,一般情况下用不到,但是对于机器上安装有多块显卡的工作室、商业用户来说意义就大了,希望该技术能尽快完善、普及。

注:图二至图四原文为英文页面,为方便读者阅读理解使用机器翻译,内容不一定完全准确,仅供参考。

发表评论

邮箱地址不会被公开。 必填项已用*标注