是否可以在VirtualBox中分配超过256MB的视频内存?


8

我正在尝试在VBox来宾中运行游戏,它需要256MB内存。但是,在VBox窗口中分配256MB内存时,使用的是3MB,而Windows 7中DXdiag的报告只剩下253MB,是否有报告256MB内存以使游戏运行的方法?是否可以将VirtualBox的内存增加到256MB以上,或者使Windows7愚蠢地报告比可用内存更多的内存?

Answers:


7

我见过同样的内存报告问题。分配了256MB内存后,Windows 8.1和Windows 7都为我报告了约255MB。奇怪的是,当设置为128MB时,两者都报告〜191MB。因此,似乎VirtualBox的3D视频驱动程序可能有问题,或者它不正确地计算了一些3D加速内存(稍后会详细介绍)。使用不同的3D驱动程序的Windows XP Professional报告128.0MB,分配的128MB。利用VBoxManage设置在XP的内存为256MB允许它打破了128MB GUI设置障碍,并在输入dxdiag报告256.0MB。

当然,在Windows 7和8.1中可能存在一些固有的效率低下,因为我发现一台装有Win7的Dell Latitude笔记本电脑报告其VRAM为〜4051MB(3.96GB),而且我不敢相信Intel会将这个奇怪的数字丢给共享图形内存。

为了直接回答您的问题,我不知道有什么方法可以强制VBox(或其3D驱动程序)报告正确的内存量,并且当前无法将为VM分配的VRAM设置为大于256MB。使用命令VBoxManage modifyvm "Windows 7" --vram 1024产生:

VBoxManage: error: Invalid VRAM size: 1024 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 570 of file VBoxManageModifyVM.cpp

并在* .vbox文件中手动设置VRAM会导致VM在启动时崩溃或不应用新的内存设置。

基于您说这是一个游戏的事实,我将猜测(如果我错了,请纠正我)这是一个3D大量游戏(例如Portal,Borderlands,Half Life,Bioshock,Minecraft等) 。)需要额外的VRAM。根据这张票官方手册,如果启用了3D加速并安装了正确的来宾添加,则来宾OS的3D命令将直接转发到主机的视频卡,而不是模拟3D硬件,这会慢得多。因此,如果游戏需要用于3D处理的内存,则它应该可以在256MB(甚至更少)上运行,因为您的主机正在直接处理3D负载,包括内存(使用主机的VRAM)。我的旧版2009年中期13英寸Macbook Pro具有256MB VRAM,因此任何现代计算机都可以正常运行。

然后我的问题是:您是否真的尝试过运行游戏?如果还没有,那就试试吧!这可能会让您感到惊讶。如果您已经运行了游戏,但确实出错,则有时游戏崩溃错误不是最具描述性的。许多游戏都假定您具有出色的3D硬件,并说该问题可能是内存问题。我的一个朋友从Virtualbox上运行的游戏中遇到了“可能内存不足”错误,事实证明他们没有在VM设置中启用硬​​件3D加速,这导致游戏在启动时崩溃。如果启用了3D加速,并且从来宾添加项中安装了Direct3D驱动程序,请尝试使用其他Direct3D驱动程序(Windows 7有两个)。实验性WDDM驱动程序(启用了Aero支持)不需要引导至安全模式即可启动,而基本的Direct3D驱动程序则需要。

如果您确实启用了3D加速,并且两种Direct3D驱动程序均不起作用,则您的游戏可能不支持VirtualBox可以提供的3D功能。您可以尝试启用2D加速(有时需要禁用3D)以查看是否有任何更改。如果没有变化,我将无法帮助您,不知道游戏是什么以及看到了什么(如果有)错误消息。

如果游戏仍然无法运行,并且无法利用2D或3D加速,则可能需要使用具有游戏所需资源的PCI直通图形卡(仅Linux主机)。Virtualbox手册的第9章对此进行了详细说明。这是一个涉及到一定过程的过程,需要特定的硬件,因此请对您的系统进行研究以查看其是否有效。您需要检查将要转发的Linux内核,主板,CPU和图形卡。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.