¿Es posible asignar más de 256 MB de memoria de video en VirtualBox?

8

Estoy tratando de ejecutar un juego dentro de un invitado VBox y requiere 256 MB de memoria. Sin embargo, al asignar 256 MB de memoria en Windows VBox se usan 3 MB, lo que deja solo 253 MB según lo informado por DXdiag en Windows 7. ¿Hay alguna manera de informar 256 MB de memoria para que el juego se ejecute? ¿Es posible aumentar la memoria de VirtualBox más allá de 256 MB o engañar a Windows 7 para que informe más memoria de la que está disponible?

uri
fuente

Respuestas:

7

He visto el mismo problema de informes de memoria. Con 256 MB asignados, tanto Windows 8.1 como Windows 7 informan ~ 255 MB para mí. Curiosamente, cuando se establece en 128 MB, ambos informan ~ 191 MB. Por lo tanto, parece que puede haber un problema con el controlador de video 3D de VirtualBox, o está contando incorrectamente parte de la memoria acelerada 3D (más sobre esto más adelante). Windows XP Professional, que usa un controlador 3D diferente, reporta 128.0MB a 128MB asignados. El uso VBoxManagepara configurar la memoria en 256 MB en XP le permite romper la barrera de configuración de la GUI de 128 MB e informa 256,0 MB en dxdiag.

De acuerdo, puede haber alguna ineficiencia inherente en Windows 7 y 8.1, ya que encontré una computadora portátil Dell Latitude con Win7 para informar su VRAM como ~ 4051MB (3.96GB), y no puedo creer que Intel arroje ese extraño número al compartido memoria gráfica

Para responder a su pregunta directamente, no conozco ninguna forma de forzar a VBox (o su controlador 3D) a informar la cantidad correcta de memoria, y actualmente no es posible configurar la VRAM asignada para la VM a más de 256 MB. Usar el comando VBoxManage modifyvm "Windows 7" --vram 1024produce:

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

y configurar la VRAM manualmente en el archivo * .vbox hace que la VM se bloquee al inicio o no aplique la nueva configuración de memoria.

Basado en el hecho de que dices que este es un juego, voy a adivinar (corrígeme si me equivoco) que es un juego pesado en 3D (como Portal, Borderlands, Half Life, Bioshock, Minecraft, etc. .) que requiere la VRAM extra. De acuerdo con este boleto y el manual oficial, si la aceleración 3D está habilitada y las adiciones de invitados correctas están instaladas, los comandos 3D del sistema operativo invitado se envían directamente a la tarjeta de video del host, en lugar de emular el hardware 3D, que sería mucho más lento. Entonces, si el juego necesita la memoria para el procesamiento en 3D, debería funcionar en los 256 MB (o tal vez incluso menos) ya que su computadora host maneja la carga 3D directamente, incluida la memoria (usando la VRAM del host). Mi viejo Macbook Pro de 13 "de mediados de 2009 tenía 256 MB de VRAM, por lo que probablemente cualquier computadora moderna funcionaría bien.

Mi pregunta es: ¿has intentado ejecutar el juego? Si no lo has hecho, ¡pruébalo! Te puede sorprender. Si ha ejecutado el juego y se produjo un error, a veces los errores de bloqueo del juego no son los más descriptivos. Muchos juegos suponen que tienes un hardware 3D competente y dicen que el problema puede ser un problema de memoria. Un amigo mío recibió un error "probablemente se quedó sin memoria" de un juego que se ejecuta en Virtualbox, y resultó que no habían habilitado la aceleración 3D de hardware en la configuración de VM, lo que provocó que el juego se bloqueara al iniciarse. Si la aceleración 3D está habilitada y se instala un controlador Direct3D desde las adiciones de invitados, pruebe el otro controlador Direct3D (hay dos para Windows 7). El controlador WDDM experimental (que permite el soporte Aero) no requiere arrancar en modo seguro para iniciarse, mientras que el controlador Direct3D básico sí.

Si tiene habilitada la aceleración 3D, y ninguno de los controladores Direct3D funciona, es posible que su juego no admita / necesite 3D de la forma en que VirtualBox puede proporcionarlo. Puede intentar habilitar la aceleración 2D (esto a veces requiere deshabilitar 3D) para ver si hay algún cambio. Si no hay cambios, no puedo ayudarte sin saber qué es el juego y qué mensajes de error (si los hay) se ven.

Si el juego aún no funciona y no puede hacer uso de la aceleración 2D o 3D, es posible que deba usar una tarjeta gráfica PCI (solo hosts Linux) que tenga los recursos que necesita el juego. Esto se detalla en el Capítulo 9 del manual de Virtualbox. Es un proceso algo complicado que requiere hardware específico, por lo que debe investigar su sistema para ver si funcionará. Debe verificar el kernel de Linux, su placa base, su CPU y su tarjeta gráfica que se reenviará.

computergeek125
fuente