如何在 VirtualBox 中分配超过 256MB 的显存?

Jan*_*and 6 virtualbox ram

我正在尝试在需要 512MB 视频内存的 Virtualbox 上玩游戏。所以按照这里的建议我关闭了 virtualbox 并尝试使用以下命令将内存增加到 512MB:

VBoxManage modifyvm "win7" --vram 512
Run Code Online (Sandbox Code Playgroud)

但我收到这个错误

 error: Invalid VRAM size: 512 MB (must be in range [1, 256] MB)
VBoxManage: error: Details: code NS_ERROR_INVALID_ARG (0x80070057), component SessionMachine, interface IMachine, callee nsISupports
VBoxManage: error: Context: "COMSETTER(VRAMSize)(ValueUnion.u32)" at line 597 of file VBoxManageModifyVM.cpp
Run Code Online (Sandbox Code Playgroud)

我想知道是否有任何方法可以绕过这个 256MB 的限制,按照今天的标准,这个限制低得离谱。

Rin*_*ind 11

你不能。而且没有必要。

VirtualBox 不使用 GPU。您在虚拟机中看到的图形 RAM 是来自主机的正常 RAM,而不是来自您的 GPU。

按照今天的标准,这是低得离谱的。

对不起,不行。宽度、高度、位/像素为 3840x2160×32,即为 33177600 字节或 31 MB。所以 256 MB 的限制足以填满......

  • 8 个 4K 屏幕
  • 或 4 个带双缓冲的 4K 屏幕
  • 或 2 个具有四重缓冲的 4K 屏幕

因此,即使您可以增加它,也没有理由超过 256Mb。它永远不会被使用,甚至更糟:它会使其-更慢-:3D 加速图形是由主机渲染的,而不是来宾,因此增加来宾图形 RAM 会将其从主机中移除。


您需要的是PCI 直通

本质上,即使主机没有此特定设备的驱动程序,此功能也允许来宾直接使用主机上的物理 PCI 设备。支持常规 PCI 和某些 PCI Express 卡。如果 AGP 和某些 PCI Express 卡依赖 GART(图形地址重映射表)单元编程进行纹理管理,则目前不支持它们,因为它执行相当重要的操作,页面重映射会干扰 IOMMU。此限制可能会在未来版本中取消。

  • @Jand然后不要在VM中使用它,这很简单!虚拟机从未设计为运行(资源需求)游戏。大多数甚至不会安装,因为他们希望安装一个常见的图形子系统(英特尔、Nividia、AMD),而不是虚拟化硬件。如果可能的话,用 Wine 在 Ubuntu 中运行它。如果没有在双启动中安装 Windows。 (2认同)