Можно ли выделить более 256 МБ видеопамяти в VirtualBox?

8

Я пытаюсь запустить игру в гостевой системе VBox, и она требует 256 МБ памяти. Однако при выделении 256 МБ памяти в окнах VBox используется 3 МБ, что оставляет только 253 МБ, как сообщает DXdiag в Windows 7. Есть ли способ сообщить 256 МБ памяти для запуска игры? Можно ли увеличить объем памяти VirtualBox выше 256 МБ или обмануть Windows7, чтобы сообщить о большем объеме памяти, чем доступно?

URI
источник

Ответы:

7

Я видел ту же проблему с отчетами о памяти. При выделении 256 МБ для меня Windows 8.1 и Windows 7 сообщают ~ 255 МБ. Как ни странно, когда установлено 128MB, оба отчета ~ 191MB. Похоже, что может быть проблема с 3D-видеодрайвером VirtualBox, или он неправильно подсчитывает часть 3D-ускоренной памяти (подробнее об этом позже). Windows XP Professional, использующая другой 3D-драйвер, сообщает о выделении 128,0 МБ при выделении 128 МБ. Использование VBoxManageдля установки в 256 МБ памяти в XP позволяет преодолеть барьер настроек графического интерфейса 128 МБ и выдает 256,0 МБ в dxdiag.

Конечно, в Windows 7 и 8.1 может быть некоторая внутренняя неэффективность, поскольку я обнаружил, что ноутбук Dell Latitude с Win7 сообщает о своей VRAM как ~ 4051 МБ (3,96 ГБ), и я не могу поверить, что Intel выбросит это странное число в общий ресурс. графическая память.

Чтобы ответить на ваш вопрос напрямую, я не знаю ни одного способа заставить VBox (или его 3D-драйвер) сообщать правильный объем памяти, и в настоящее время невозможно установить VRAM, выделенный для виртуальной машины, больше 256 МБ. Использование команды 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

и установка VRAM вручную в файле * .vbox приводит к сбою виртуальной машины при запуске или не применяет новый параметр памяти.

Исходя из того, что вы говорите, что это игра, я угадаю (поправьте меня, если я ошибаюсь), что это 3D-тяжелая игра (например, Portal, Borderlands, Half Life, Bioshock, Minecraft и т. Д.). .) что требует дополнительного VRAM. Согласно этому билету и официальному руководствуЕсли 3D-ускорение включено и установлены правильные гостевые дополнения, 3D-команды гостевой ОС перенаправляются непосредственно на видеокарту хоста, а не эмулируют 3D-оборудование, что будет намного медленнее. Таким образом, если игре требуется память для трехмерной обработки, она должна работать на 256 МБ (или, может быть, даже меньше), поскольку ваш главный компьютер напрямую обрабатывает трехмерную загрузку, включая память (используя VRAM хоста). Мой старый 13-дюймовый Macbook Pro середины 2009 года имел 256 МБ видеопамяти, так что, вероятно, любой современный компьютер подойдет.

Мой вопрос: вы пытались запустить игру? Если нет, попробуйте! Это может вас удивить. Если вы запустили игру, и в ней произошла ошибка, иногда ошибки сбоя игры не являются наиболее описательными. Многие игры предполагают, что у вас есть компетентное 3D-оборудование, и говорят, что проблема может быть связана с памятью. Мой друг получил ошибку «возможно, не хватило памяти» из игры, запущенной на Virtualbox, и оказалось, что они не включили аппаратное 3D-ускорение в настройках виртуальной машины, что приводило к падению игры при запуске. Если ускорение 3D включено и драйвер Direct3D установлен из гостевых дополнений, попробуйте другой драйвер Direct3D (для Windows 7 их два). Экспериментальный драйвер WDDM (который включает поддержку Aero) не требует загрузки в безопасном режиме для запуска, в отличие от основного драйвера Direct3D.

Если у вас включено 3D-ускорение, и ни один из драйверов Direct3D не работает, ваша игра может не поддерживать / не поддерживать 3D в том виде, в котором может обеспечить VirtualBox. Вы можете попробовать включить 2D ускорение (иногда требуется отключение 3D), чтобы увидеть, есть ли какие-либо изменения. Если нет изменений, я не могу помочь вам, не зная, что это за игра и какие (если есть) сообщения об ошибках видны.

Если игра по-прежнему не работает и не может использовать ускорение 2D или 3D, вам может потребоваться использовать проходную видеокарту PCI (только для хостов Linux), которая имеет ресурсы, необходимые для игры. Это подробно описано в главе 9 руководства Virtualbox. Это довольно сложный процесс, требующий специального оборудования, поэтому проведите исследование вашей системы, чтобы увидеть, будет ли оно работать. Вам нужно проверить ядро ​​Linux, вашу материнскую плату, ваш процессор и вашу видеокарту, которые будут пересылаться.

computergeek125
источник