Я уже некоторое время использую 12.04 в качестве гостя на своем ноутбуке, и он работает безупречно.
Сегодня коллега спросил меня о 3D-производительности гостя. Мне никогда не приходило в голову использовать модные 3D-вещи на гостях, но в любом случае меня интересовали результаты, поэтому я включил 3D acceleration
в меню VirtualBox для своей установки и перезагрузил vm.
Запуск glxgears
дает странные предупреждения, плюс окно с вращающимися шестернями остается черным (я разместил вывод консоли ниже).
Работая glxgears
без , работает ускорение 3D, я получаю ~ 570 FPS и без предупреждений.
Низкий FPS - не моя проблема, но черное окно glxgears странно. Я думаю, что есть проблема с драйвером nVidia хост-системы? (взглянув на суффикс предупреждений NV
)
ortang@vbox-12-04:~$ glxgears
OpenGL Warning: glFlushVertexArrayRangeNV not found in mesa table
OpenGL Warning: glVertexArrayRangeNV not found in mesa table
OpenGL Warning: glCombinerInputNV not found in mesa table
OpenGL Warning: glCombinerOutputNV not found in mesa table
OpenGL Warning: glCombinerParameterfNV not found in mesa table
OpenGL Warning: glCombinerParameterfvNV not found in mesa table
OpenGL Warning: glCombinerParameteriNV not found in mesa table
OpenGL Warning: glCombinerParameterivNV not found in mesa table
OpenGL Warning: glFinalCombinerInputNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterivNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glDeleteFencesNV not found in mesa table
OpenGL Warning: glFinishFenceNV not found in mesa table
OpenGL Warning: glGenFencesNV not found in mesa table
OpenGL Warning: glGetFenceivNV not found in mesa table
OpenGL Warning: glIsFenceNV not found in mesa table
OpenGL Warning: glSetFenceNV not found in mesa table
OpenGL Warning: glTestFenceNV not found in mesa table
369 frames in 5.0 seconds = 73.647 FPS
Хост - это ноутбук Dell Windows 7 (64 бит) (Precision E4600) с процессором i7-2820QM
и процессором nVidia Quadro 2000M
(версия драйвера) 311.10) видеокарта.
Гость является последней установкой 12.04 LTS с установленными гостевыми дополнениями.
Некоторая дополнительная информация, запускающая инструмент тестирования поддержки единства:
ortang@vbox-12-04:~$ /usr/lib/nux/unity_support_test -p
OpenGL Warning: glFlushVertexArrayRangeNV not found in mesa table
OpenGL Warning: glVertexArrayRangeNV not found in mesa table
OpenGL Warning: glCombinerInputNV not found in mesa table
OpenGL Warning: glCombinerOutputNV not found in mesa table
OpenGL Warning: glCombinerParameterfNV not found in mesa table
OpenGL Warning: glCombinerParameterfvNV not found in mesa table
OpenGL Warning: glCombinerParameteriNV not found in mesa table
OpenGL Warning: glCombinerParameterivNV not found in mesa table
OpenGL Warning: glFinalCombinerInputNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterivNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glDeleteFencesNV not found in mesa table
OpenGL Warning: glFinishFenceNV not found in mesa table
OpenGL Warning: glGenFencesNV not found in mesa table
OpenGL Warning: glGetFenceivNV not found in mesa table
OpenGL Warning: glIsFenceNV not found in mesa table
OpenGL Warning: glSetFenceNV not found in mesa table
OpenGL Warning: glTestFenceNV not found in mesa table
OpenGL vendor string: Humper
OpenGL renderer string: Chromium
OpenGL version string: 2.1 Chromium 1.9
Not software rendered: yes
Not blacklisted: yes
GLX fbconfig: yes
GLX texture from pixmap: yes
GL npot or rect textures: yes
GL vertex program: yes
GL fragment program: yes
GL vertex buffer object: yes
GL framebuffer object: yes
GL version is 1.4+: yes
Unity 3D supported: yes
Графический интерфейс работает гладко, однако я не активировал какие-либо модные вещи (все по умолчанию).
Я нашел несколько ссылок, в которых сообщалось, что 3D-ускорение отлично работает на госте 12.04, они даже запускают там игры без значительной потери производительности.
Я нашел похожий пост по stackoverflow, но он был закрыт как не по теме:
Любые советы по решению этой проблемы были бы хорошими!
Вы установили инструменты Virtualbox Guest Additions на виртуальной машине? Как только машина запустится, перейдите на вкладку меню с надписью «устройства», перейдите к последнему параметру в меню и нажмите «Вставить компакт-диск с Gest Additions», вы увидите загрузочный компакт-диск внутри ОС, установите драйверы и получите лучшая производительность, надеюсь, это поможет.
Видеодрайверы в пакете Guest Additions являются просто прокси-сервером между гостевой ОС и видеодрайверами хоста (с некоторыми ограничениями, такими как 16 (модифицируемые) МБ видеопамяти). Это означает, что те же ошибки могут появиться, даже если ОС будет работать с обновленными драйверами NVidia (вы можете использовать проприетарные драйверы - для их установки просто запустите файл .run из оболочки) или, может быть, только БЕЗ обновленных драйверов.
Возможно, что Windows 7 не включает (по крайней мере, я полагаю, что нет) реальных драйверов NVidia, но в большинстве совместимых, но менее мощных (как те, которые изначально были в Ubuntu). Если это так, вы должны обновить драйверы HOST из ЗДЕСЬ !