USM将闲置NVIDIA显存用作Linux交换空间
USM是一款仅支持NVIDIA的Linux测试版项目,其用户空间守护进程通过CUDA借用闲置显存,并利用ublk将其作为高优先级交换设备,无需内核模块。开发者kha333n称,5.5 GiB显存经lz4压缩后可容纳约16 GiB应用内存,每次缺页约9微秒,而NVMe约为55微秒并另含开销。该项目已在Ubuntu 26.04的两台笔记本上测试,大部分代码由Claude Code辅助编写。
USM提供了一种利用闲置NVIDIA显存扩展交换空间的实用方法,但性能和稳定性数据均由开发者自行报告,目前测试范围仅限NVIDIA系统与两台笔记本。
My 16 GB laptop (RTX 3050 6 GB, the Intel GPU drives the screen) slowed to a crawl whenever RAM hit about 90%, because swap lived on a DRAM-less NVMe drive. The NVIDIA card's memory sat idle the whole time.
USM makes that VRAM the first swap device:
\- a user-space daemon borrows VRAM through the CUDA driver API and serves it through ublk, so it's a normal swap device at the top priority (no kernel module, Secure Boot is fine)
\- lz4 compression: 5.5 GiB of VRAM holds about 16 GiB of app memory
\- about 9 µs per page fault, vs about 55 µs plus overhead from NVMe
\- \`usm off\`, or a Quick Settings toggle, gives the VRAM back in seconds, even with RAM full
#USM#NVIDIA#CUDA#ublk#Ubuntu 26.04#lz4#NVMe#zram#Claude Code