最近入手了一块 华擎 Z370M-ITX/ac 小板,打算安装 Unraid 系统。装机过程略过不表,重点在于:我打算虚拟一个黑群晖用于运行相册插件,需要显卡硬解;还想虚拟一个 Windows 环境并直通显卡;Docker 容器也打算使用核显硬解……
好吧,问题来了——只有一个核显,确实有点“分身乏术”。
说到分身,这不正是虚拟化技术的强项吗?Unraid 有一个神级插件:Intel GVT-g,专门用于 Intel 核显的虚拟化,非常适合当前场景。
什么是 Intel GVT-g?
Intel GVT-g 是一种 显卡虚拟化技术,与传统的 PCI-E 设备直通不同,它可以将一个物理 GPU 拆分为多个虚拟 GPU,分别分配给不同的虚拟机使用。
优点是虚拟机可以获得接近原生的图形性能,而宿主机仍然可以使用这块 GPU。
简单来说,就是“把一个显卡掰成好几块”,多台虚拟机“各吃一口”。
实践开始:配置 GVT-g 遇到的显存瓶颈
说干就干,安装配置一切顺利,分配给 Windows 一个 GPU,再分给群晖一个——结果失败了,报错。
翻查资料后发现,原来是显存不足导致的。
于是进入 BIOS 想调节显存。但华擎这块主板 BIOS 里只有一个 DVMT(动态共享显存)最大值选项,最大仅支持 1024MB。我尝试将 DVMT 调至最大,但并没有解决问题。
进一步查找得知:GVT-g 不仅依赖 DVMT,还需要调整一个叫 Aperture Size 的设置项。然而这个选项在 BIOS 中并没有开放。
解决方案?直接修改 BIOS 设置!
⚠️ 温馨提示:修改 BIOS 有风险,请谨慎操作!本操作仅适用于八九代CPU
BIOS 修改流程详解
第一步:获取 BIOS 文件
- 有经验的用户建议直接从主板上提取当前 BIOS。
- 简单起见,我直接从 官网 下载了最新版 BIOS 并完成更新。
第二步:使用 UEFI Tool 查找设置模块
工具地址: UEFITool
下载地址:https://pan.baidu.com/s/178T-HS2e5wIK60-0txG1nQ?pwd=8qsu 提取码: 8qsu
-
使用 UEFI Tool 打开 BIOS 更新文件。
-
按
Ctrl + F
,切换到Text
选项卡,搜索关键词:aperture size
。 -
找到相关模块后,将其导出为
.efi
文件备用。
第三步:提取偏移地址
下载地址:https://pan.baidu.com/s/178T-HS2e5wIK60-0txG1nQ?pwd=8qsu 提取码: 8qsu
-
用 IFR Extractor 打开上一步导出的
.efi
文件。 -
另存为
.txt
文本文件。 -
用文本编辑器搜索
aperture
,可以找到偏移地址,如示例:偏移地址: 0x736 默认值: 0x1(256MB)
第四步:制作引导盘修改隐藏设置
工具地址:grub-mod-setup_var
下载地址:https://pan.baidu.com/s/178T-HS2e5wIK60-0txG1nQ?pwd=8qsu 提取码: 8qsu
-
准备一个空 U 盘,格式化为 FAT32。
-
将 grub 引导文件放入路径
EFI/BOOT/bootx64.efi
中。 -
插入主机并从 U 盘引导,进入 grub 命令行界面。
第五步:验证并修改 Aperture Size
1. 验证偏移地址:
setup_var_3 0x736
若返回 0x1
,说明当前值为 256MB。
2. 修改为 2048MB:
setup_var_3 0x736 0xF
然后输入 reboot
重启系统。
第六步:验证是否生效
可在系统中查看核显显存是否增加:
常见问题与应对
- 问题:超过 1024MB 后无法进入 BIOS,或 grub 提示
No suitable mode found
- 解决方法:系统功能不受影响,仅是图形分辨率不兼容。
- 恢复方法:断电后取下 CMOS 电池几秒,再安装回去即可恢复默认设置。
总结
通过修改 BIOS 隐藏设置,我们成功扩大了核显显存,为 Intel GVT-g 提供了更好的支持,实现多虚拟机 GPU 加速。
此操作虽然有一定技术门槛,但效果显著,尤其适合希望一机多用的轻量 NAS 玩家和虚拟化爱好者。