Почему гость Ubuntu в VirtualBox работает очень, очень медленно?

В настоящее время я использую Ubuntu 12.04 LTS в качестве хост-машины, и я виртуализировал три машины:

  • гость Xubuntu 12.04
  • гость Windows 7
  • гость Ubuntu 12.10

Все гости имеют одинаковые настройки VirtualBox по умолчанию, но Ubuntu 12.10 работает медленнее!

Установка заняла 1 час 40 минут! (Обычно это занимает 40 минут.) Сейчас им невозможно пользоваться, и все операции выполняются очень и очень медленно.

Я использую VirtualBox версии 4.2.4.

Есть какие-нибудь идеи?

Почему это происходит медленно? И как я могу сделать это быстрее?

Ubuntu 12.10 больше не включает Unity 2D, который был реализован для платформ, которые не могут обеспечить 3D-ускорение. Вместо этого в Ubuntu 12.10 Unity работает под управлением LLVM, что позволяет запускать код, предназначенный для графического процессора, на процессоре. Это намного медленнее, чем использование графического процессора.

Чтобы проверить, использует ли ваш гость Ubuntu 12.10 3D-ускорение, выполните эту команду:

$ /usr/lib/nux/unity_support_test -pNot software rendered:    noNot blacklisted:          yesGLX fbconfig:             yesGLX texture from pixmap:  yesGL npot or rect textures: yesGL vertex program:        yesGL fragment program:      yesGL vertex buffer object:  yesGL framebuffer object:    yesGL version is 1.4+:       yesUnity 3D supported:       no

Как вы можете видеть, "Не визуализируется программным обеспечением" и "Поддерживается Unity 3D" в этом примере возвращают "нет", что означает, что Unity использует медленный LLVMpipe.

Как включить 3D-ускорение (только VirtualBox 4.2.x)

Эти инструкции предназначены для VirtualBox 4.2.4 или 4.2.6, установленных с веб-сайта VirtualBox, а не из репозитория Ubuntu. Будущие версии VirtualBox могут автоматически устранить эту проблему или могут потребоваться другие обходные пути.

  1. Установите VirtualBox Oracle VM VirtualBox Extension Pack.
  2. Создайте экземпляр VirtualBox и установите на него Ubuntu 12.10.
  3. Установите некоторые необходимые пакеты для гостевых дополнений:

    sudo apt-get install linux-headers-$(uname -r) build-essential
  4. Установите гостевые дополнения, нажав Устройства, Установите гостевые дополнения и выполнив эту команду из каталога компакт-диска:

    sudo ./VBoxLinuxAdditions.run
  5. Добавьте vboxvideo драйвер к экземпляру, выполнив:

    sudo bash -c 'echo vboxvideo >> /etc/modules'
  6. Завершите работу экземпляра VirtualBox.
  7. Откройте настройки экземпляра Virtualbox, перейдите в раздел "Отображение" и отметьте галочкой "Включить 3D-ускорение".
  8. Загрузите гостевую версию Ubuntu 12.10 и проверьте, работает ли 3D-ускорение, запустив:

    /usr/lib/nux/unity_support_test -p

Если windows, кажется, исчезнет, установите CompizConfig Settings Manager и отключите объект фреймбуфера (FBO) в разделе OpenGL:

  1. Установите диспетчер настроек CompizConfig:

    sudo apt-get install compizconfig-settings-manager
  2. Запустите диспетчер настроек CompizConfig:

    ccsm
  3. Выберите раздел OpenGL, а затем снимите флажок с параметра Объект фреймбуфера. Если это устранит проблему, она должна быть сразу видна. Перезагрузка не требуется.

Я слышал, что это как-то связано с тем фактом, что они удалили Единство 2D, или каким-то образом переход на 3D Unity только замедляет производительность виртуальной машины из-за сильной зависимости от процессора, обрабатывающего больше, чем раньше. То Подкаст Linux Outlaws немного поговорили об этом, но я забыл этот эпизод.

Обновление: Проблема заключается в том, что гостевые дополнения Virtualbox не обеспечивают 3D-ускорение в версии 12.10. Видеть Ubuntu 12.10 не может использовать 3D-ускорение. Не удается создать DRM.

Похоже, разработчики программного обеспечения VirtualBox работают над решением, но оно еще не готово - см. Сообщение на форуме Обсудите выпуск 4.2.4.

Есть тема, обсуждающая это в fourm post Ubuntu 12.10 "практически" непригоден для использования

Я не знаю о настройках графического интерфейса, необходимых для использования Unity внутри виртуальной машины, но я знаю, как настраивать виртуальные машины в virtualbox, KVM и других. Мне никогда не удавалось заставить Unity хорошо работать в любой виртуальной среде. Никогда не старался слишком сильно, предпочитая использовать либо чистый WM, либо DE на основе LXDE.

Более подробные настройки находятся здесь: http://blog.jdpfu.com/2012/09/14/solution-for-slow-ubuntu-in-virtualbox

Резюме:

  • Значения по умолчанию Vbox не подходят для версий Ubuntu, которым нравится настоящий графический процессор.
  • На вращающихся жестких дисках, предварительно выделите весь виртуальный диск. На твердотельных накопителях это не имеет значения.
  • Выделяйте только то хранилище, которое вам нужно. Храните большие файлы в другом месте, за пределами vStorage.
  • Никогда не выделяйте больше процессоров или оперативной памяти, чем следует. 1 vCPU вероятно, этого достаточно.
  • Оставьте 1 ГБ оперативной памяти для хостов. Не перегружайте оперативную память.
  • Используйте Драйверы VirtIO для хранения и подключения к сети. Современные гости Linux поддерживают это.
  • Для гостей Windows используйте драйверы SATA (хранилище) и Intel PRO/1000 (сеть). Можно использовать драйверы virtio под Windows, это просто немного сложнее.
  • Включите ACPI и AHCI для всех гостей, начиная с 2003 года, WinXP и более поздних версий.
  • Настольные виртуальные машины должны получить все 128 МБ видеопамяти дисплея
  • Серверные виртуальные машины должны иметь 9 МБ видеопамяти; не тратьте его впустую.
  • Избегайте настроек ускорения 2D и 3D до тех пор, пока все остальное не будет работать так, как вам нравится. Ubuntu / Unity делает плохие вещи, когда это включено. Это может привести Core i7 к падению на землю.

В других ответах есть много советов по производительности графического интерфейса. Они, вероятно, тоже действительны.Эти же советы применимы к KVM, VM-Player и другим виртуальным гипервизорам. Это работает и для серверов.

Удачи.

Я добился хороших результатов, вернувшись от Unity к резервному GNOME. Вы можете сделать это, просто установив GNOME-session-fallback из центра программного обеспечения, а затем выбрав его на экране входа в систему.

видеть: http://www.psychocats.net/ubuntu/classicgnome для случайного подробного руководства

Чтобы включить поддержку 3D, сначала вам нужно будет обновить linux-заголовки

$ uname -r$ sudo apt-get install linux-headers-$(uname -r)$ sudo apt-get autoremove$ sudo apt-get install build-essential

Теперь вставьте гостевой ISO vitualbox с устройств и установите вручную

$ cd /media$ ls$ cd username$ ls$ cd VBOX*$ ls$ sudo ./VBoxLinuxAdditions.run

Вставьте vboxvideo в /etc/modules

$ sudo nano /etc/modules

Добавьте “vboxvideo” в конце файла

looplpvboxvideo

Перезагрузите компьютер

$ sudo reboot

Проверьте, включены или нет ”Не отображается программным обеспечением“ и ”Поддерживается Unity 3D" после перезагрузки

$ /usr/lib/nux/unity_support_test -p

Следующее, что вы хотите сделать, - это увеличить объем видеопамяти. Найдите файл .vbox

$ nano /home/username/VirtualBox VMs/ubuntu/ubuntu.vbox

Заменять

<Display VRAMSize="128" monitorCount="1" accelerate3D="true" accelerate2DVideo="false"/>

К

<Display VRAMSize="256" monitorCount="1" accelerate3D="true" accelerate2DVideo="false"/>

источник: Как исправить медленную производительность ubuntu 13.04, работающую в virtualbox

для меня то, что просто сработало, было Enabling 3D Acceleration в настройках отображения виртуальной машиныenter image description here

Приведенный ниже ответ Флимма устранил для меня проблему с медлительностью. Why does a Ubuntu guest in VirtualBox run very, very slowly? - Ask Ubuntu

Вы пробовали возиться с конфигурациями? Вы пробовали устанавливать гостевые версии?

Да, я установил гостевые дополнения, но, похоже, ничего не изменилось… странно то, что я установил много виртуальных машин с ubuntu или другим дистрибутивом, но только Ubuntu 12.10 делает это… во время установки я, как всегда, оставил все настройки по умолчанию; остальные 2 виртуальные машины работают нормально…