别再买内存了!N卡显存真能当内存用
把RTX 5090闲着的显存交给WSL2,确实能接住爆掉的内存数据。XDA作者成功分出7168MB显存作为交换空间,但一轮性能测试下来,最反常的结果也出现了:显存路径的平均延迟和并发IOPS都输给了WSL2原有的VHDX交换路径。
这张RTX 5090带有32GB GDDR7显存。作者说自己的日常任务多数时间只占3.4GB,另一边的WSL2却会被容器、编译任务和本地大模型挤到内存告急。看着一大块显存闲置,再看系统内存吃满,拿显存救场的念头并不离谱。
这个脑洞最近格外容易让装机玩家上头。7月底我们还在聊内存、显卡和CPU轮番涨价。8月15日,据报道,柏能集团称,供应紧张已经波及显卡之外的产品,CPU、内存等零部件交付周期也在延长。钱袋子一紧,机器里每一块闲置容量都像是能重新就业。

但最关键的名词得先掰正。nbd-vram没有把显存变成系统内存,它只是把显存做成了高优先级交换空间。
物理内存是CPU直接工作的地方,交换空间则像内存不够时临时停放数据的后场。程序真正要继续处理这些数据,仍要把它们搬回来。把后场从磁盘换成显存,可以缓解内存压力,却没有消除数据搬运,也没有让显存获得内存条的身份。
普通GeForce无法直接走项目所需的显存映射路径。原文提到,让CPU直接寻址显存的P2P接口只面向Quadro、RTX Pro和数据中心卡。nbd-vram于是绕了一圈,通过CUDA驱动分配显存,再由一个小型守护进程经Unix socket把这块空间提供成网络块设备。Linux内核的NBD驱动接入后生成/dev/nbd0,系统便能把它当作swap使用。

这套办法原本更适合内存焊死、同时带有混合显卡的Linux笔记本。独显不工作时,闲置显存可以接替一部分磁盘交换任务,也不用额外维护内核模块。
XDA作者测试的是另一种环境。他使用Windows 11 Pro Insider 26H2、WSL 2.9.4和WSL2 6.18内核,加载NBD驱动本身只需执行sudo modprobe nbd。真正卡住的是nbd-vram启动时调用mlockall锁定内存,这一步撞上了WSL2通过/dev/dxg处理GPU虚拟化的过程,程序会一直挂起。
作者最终用VRAM_NO_MLOCK=1跳过锁定,几秒内分配出7168MB显存。任务管理器同时显示约7.5GB显存被占用,说明这块容量没有被Windows偷偷落到共享系统内存。不过这个开关也会关闭守护进程两道防死锁保护中的一道,适合验证能不能跑,不适合当作长期稳定方案直接照搬。
随后,作者把这块显存交换空间设为1500优先级,高于WSL2默认提供的12GB磁盘交换空间。一个正在运行、内存吃紧的进程有3.5GB数据被换入显存时,显存侧计数持续上涨,VHDX交换文件仍保持为零。到这里,“显存能替WSL2接住交换数据”已经得到验证。
速度却没有按显存带宽写剧本。平均延迟测试中,显存设备为331.5微秒,VHDX文件路径为307.7微秒,后者反而更快。显存路径的优势是波动较小,VHDX在最差一轮跑到了880微秒。
项目作者曾在自己的笔记本上测出显存swap比NVMe低34倍的延迟,还跑出312000 IOPS。两组结果并不矛盾。那台笔记本的NVMe会在零散访问之间进入省电休眠,每次唤醒都会增加延迟;XDA作者的桌面NVMe不休眠,WSL2里的“磁盘”还是由Windows主机缓存的VHDX文件,主机内存帮它抄了近路。
并发测试把环境差异放得更大。面对异步4K随机读取、16个NBD连接和8个任务,显存设备只有46900 IOPS,VHDX路径达到425000 IOPS。显存数据每次都要穿过GPU虚拟化层,单次往返约增加330微秒。16个连接按这个延迟计算,上限大约就是48000 IOPS,和实测结果几乎对上了。
瓶颈也不在显存带宽。XDA作者测得1.8GB/s,项目作者的裸机笔记本数据为1.9GB/s。真正拖住WSL2的,是每一次IO都绕不开的虚拟化往返。
所以,这项技术最合适的落点很明确。内存焊死、独显长期闲置、运行原生Linux的混合显卡笔记本,确实可能用它获得比休眠NVMe更灵敏的swap。换到Windows桌面的WSL2里,它依然能救急,也能减少交换文件对SSD的写入,但性能未必胜过主机缓存加持的VHDX。
还有一笔账不能算反。8月9日的二手价记录中,NVIDIA GeForce RTX 5090 32G为30500元。nbd-vram的价值在于盘活手里已有的闲置显存,不是为了少装内存而去买一张RTX 5090。显卡一旦开始跑游戏、CUDA任务或本地大模型,这块显存本身也要干正事,更不可能同时当成没有代价的备用内存。
如果WSL2只是偶尔被容器或编译任务顶爆,nbd-vram可以是一条有意思的应急通道;如果工作负载长期缺内存,物理内存仍该负责前台,显存swap只能守在后场。
讨论与补充
0还没有讨论
分享一条可复现的补充、问题或使用经验。