Как уменьшить загрузку процессора при запуске Virtual Box?
Я столкнулся с проблемой 100% загрузки процессора под моей системой при запуске VirtualBox. Вот некоторые дополнительные детали:
Информация о моей системе:
Название процессора 1: Intel (R) Pentium (R) Dual CPU T2310 @ 1,46 ГГц Размер
процессора 1 уровня 1: 32K Кэш данных. 32K кеш инструкций.
Объем кэш-памяти 1-го уровня ЦП: 1024 КБ.
Процессор 1 Mips: 2926,20
Название процессора 2: Intel® Pentium® Dual CPU T2310 @ 1,46 ГГц Размер
процессора 1 уровня 1: 32 Кэш данных. 32K кеш инструкций.
Размер кэша ЦП 2 уровня 2: 1024К Унифицированный кеш.
CPU 2 Mips: 2925,96
64-битный процессор? Да!
Общий объем памяти: 2,0 ГБ
Общий объем подкачки: 6141 МБайт
Информация о моей операционной системе:
Версия ОС Kubuntu: 11.04
Версия ядра: 2.6.38-8 — универсальная
арка ядра: i686
Оболочка по умолчанию: / bin / bash
Настройки моего виртуального ящика:
Тип ОС: Windows XP
Видеопамять: 32 МБ
Ускорение: 3D
Базовая память: 512 МБ
Детали проблемы:
Что ж, каждый раз, когда я запускаю Windows XP из моего VirtualBox, я вижу использование процессора почти на 100%. У меня медленная работа системы, даже если на моей версии Windows XP не было запущено ни одной программы.
Мне было интересно, есть ли способ поиграть с настройками, чтобы я мог немного улучшить производительность. Мой компьютер относительно быстрый под моей операционной системой Linux. Мне нужно знать, есть ли некоторые советы, которым я могу следовать при настройке параметров моего VirtualBox, чтобы я мог достичь лучших результатов.
Любые предложения / идеи высоко ценятся!
При разработке моего комментария выше T2310 не имеет расширений виртуализации (VT-x) в соответствии с таблицей данных вашего процессора по адресу http://ark.intel.com/Product.aspx?id=32431.
Из этой статьи в Википедии есть три основных момента, которые будут вызывать ощутимое снижение производительности ВМ (и, следовательно, увеличение использования ЦП на хосте:
Двоичный перевод используется для перезаписи определенных инструкций, таких как POPF, которые в противном случае могли бы молча терпеть неудачу или вести себя по-другому, когда выполняются выше кольца 0, что делает классическую виртуализацию ловушек и эмуляций невозможной. Для повышения производительности переведенные базовые блоки должны кэшироваться согласованным образом, который обнаруживает исправления кода (например, используемые в VxD), повторное использование страниц гостевой ОС или даже самоизменяющийся код.
Ряд ключевых структур данных, используемых процессором, должен быть скрыт. Поскольку большинство операционных систем используют выгружаемую виртуальную память, и предоставление гостевой ОС прямого доступа к MMU означало бы потерю контроля со стороны менеджера виртуализации, часть работы MMU x86 должна дублироваться в программном обеспечении для гостевой ОС с использованием метода известный как таблицы теневых страниц. Это включает отказ гостевой ОС в любом доступе к фактическим записям таблицы страниц, перехватывая попытки доступа и эмулируя их вместо этого в программном обеспечении.
Эмуляция устройства ввода / вывода: неподдерживаемые устройства в гостевой ОС должны эмулироваться эмулятором устройства, который работает в хостовой ОС.
Гостевая операционная система имеет большие потери для операций, которые требуют использования обязательных привилегированных инструкций, и, как правило, эти издержки значительно снижаются за счет использования расширений виртуализации Intel-VT-x и AMD-V AMD. В вашем процессоре отсутствуют эти расширения, поэтому вся работа по захвату и эмуляции приведет к некоторой потере производительности.
Мои рекомендации будут:
Чтобы предоставить виртуальной машине столько памяти, сколько ей необходимо, чтобы свести к минимуму объем подкачки, который может потребоваться, возможно, 1 ГБ или более, в зависимости от ваших рабочих нагрузок.
Отключите 3D-ускорение, так как все вызовы 3D-драйвера, возможно, придется проталкивать через слой эмуляции и, следовательно, могут быть дорогими на вашем процессоре.
Установите гостевые дополнения Virtualbox для гостевой операционной системы, так как они будут использовать драйверы, которые лучше поддерживают виртуальную среду.
Уменьшите разрешение экрана и графические опции в вашей гостевой операционной системе.
Поддерживайте доступ к сети (Интернет) на разумном уровне, виртуальные машины с высокой степенью привязанности к сети обходятся дорого даже с VT-x, а также с преимуществами VT-d (технология виртуализации для направленного ввода-вывода), которая также не поддерживается вашим процессором.
Как уменьшить нагрузку на процессор при запуске Virtual Box?
Я столкнулся с проблемой 100% загрузки процессора под моей системой при запуске VirtualBox. Вот некоторые дополнительные детали:
Информация о моей системе:
Название процессора 1: Intel® R Pentium®® Dual CPU T2310 с частотой 1,46 ГГц
Размер кэш-памяти 1-го уровня CPU 1: 32K. 32K кеш инструкций.
Объем кэш-памяти 1-го уровня ЦП: 1024 КБ.
Процессор 1 Mips: 2926,20
Название процессора 2: Intel® R Pentium®® Dual CPU T2310 с частотой 1,46 ГГц
Размер кэша ЦП 2 уровня 1: 32 Кэш данных. 32K кеш инструкций.
Размер кэша ЦП 2 уровня 2: 1024К Унифицированный кеш.
CPU 2 Mips: 2925,96
64 битный процессор? Да!
Общий объем памяти: 2,0 ГБ
Всего подкачки: 6141 МБайт
Информация о моей операционной системе:
Версия ОС Kubuntu: 11.04
Версия ядра: 2.6.38-8-generic
Ядро арки: i686
Оболочка по умолчанию: /bin /bash
Настройки моего виртуального ящика:
Тип ОС: Windows XP
Видеопамять: 32 МБ
Ускорение: 3D
Базовая память: 512 МБ
Детали проблемы:
Что ж, каждый раз, когда я запускаю Windows XP из моего VirtualBox, я вижу использование процессора почти на 100%. У меня медленная работа системы, даже если на моей версии Windows XP не было запущено ни одной программы.
Мне было интересно, есть ли способ поиграть с настройками, чтобы я мог немного улучшить производительность. Мой компьютер относительно быстрый под моей операционной системой Linux. Мне нужно знать, есть ли некоторые советы, которым я могу следовать при настройке параметров моего VirtualBox, чтобы я мог добиться лучших результатов.
Любые предложения / идеи высоко ценятся!
2 ответа 2
При разработке моего комментария выше T2310 не имеет расширений виртуализации (VT-x) в соответствии с таблицей данных вашего процессора по адресу http://ark.intel.com/Product.aspx?id=32431.
Из этой статьи в Википедии есть три основных момента, которые будут вызывать ощутимое снижение производительности ВМ (и, следовательно, увеличение использования ЦП на хосте:
Двоичный перевод используется для перезаписи определенных инструкций, таких как POPF, которые в противном случае могли бы молча терпеть неудачу или вести себя по-другому, когда выполняются выше кольца 0, что делает классическую виртуализацию «ловушкой и эмуляцией» невозможной. Для повышения производительности переведенные базовые блоки должны кэшироваться согласованным образом, который обнаруживает исправления кода (например, используемые в VxD), повторное использование страниц гостевой ОС или даже самоизменяющийся код.
Ряд ключевых структур данных, используемых процессором, должен быть затенен. Поскольку большинство операционных систем используют выгружаемую виртуальную память, и предоставление непосредственного доступа гостевой ОС к MMU означало бы потерю контроля со стороны менеджера виртуализации, часть работы MMU x86 должна дублироваться в программном обеспечении для гостевой ОС с использованием метода известный как таблицы теневых страниц. Это включает отказ гостевой ОС в любом доступе к фактическим записям таблицы страниц, перехватывая попытки доступа и эмулируя их вместо этого в программном обеспечении.
Эмуляция устройства ввода / вывода: неподдерживаемые устройства в гостевой ОС должны эмулироваться эмулятором устройства, который работает в хостовой ОС.
Гостевая операционная система сильно перегружена для операций, которые требуют использования обязательных привилегированных инструкций, и, как правило, эти накладные расходы значительно снижаются за счет использования расширений виртуализации Intel-VT-x и AMD-V AMD. В вашем процессоре отсутствуют эти расширения, поэтому вся работа по захвату и эмуляции приведет к некоторой потере производительности.
Мои рекомендации будут:
Чтобы предоставить виртуальной машине столько памяти, сколько нужно, чтобы минимизировать объем подкачки, который может быть выполнен, возможно, 1 ГБ или более, в зависимости от ваших рабочих нагрузок.
Отключите 3D-ускорение, так как все вызовы 3D-драйвера, возможно, придется проталкивать через слой эмуляции и, следовательно, могут быть дорогими на вашем процессоре.
Установите гостевые дополнения Virtualbox для гостевой операционной системы, так как они будут использовать драйверы, которые лучше поддерживают виртуальную среду.
Уменьшите разрешение экрана и графические опции в вашей гостевой операционной системе.
Поддерживайте доступ к сети (Интернет) на разумном уровне, виртуальные машины с высокой степенью привязанности к сети обходятся дорого даже с VT-x, а также с преимуществами VT-d (технология виртуализации для направленного ввода-вывода), которая также не поддерживается вашим процессором.
Ужасная производительность диска VirtualBox (РЕШЕНО)
Производительность виртуальной машины зависит от выделенной ей ресурсов (количество ядер центрального процессора, количество оперативной памяти) и от количества запущенных программ в виртуальной машине и их требовательности к ресурсам. Это логично и работает примерно так, как интуитивно ожидается.
Но при интенсивном использовании диска в виртуальной машине её производительность падает непропорционально драматически. Например, установка пакета, содержащего большое количество файлов, в гостевой машине Linux может растянуться на часы! Это при том, что аналогичный пакет на реальном компьютере устанавливается за минуты. Обновление Windows могут замедлить работу виртуальной машины до полной её неработоспособности.
Всё это замедляет работу и портит опыт работы с виртуальными машинами.
Данную проблему можно исправить, включив «Кэширования ввода/вывода» для виртуального диска.
Чтобы включить «Кэширования ввода/вывода»:
- Выключите виртуальную машину, если она включена
- Откройте диалоговое окно настроек виртуальной машины.
- Перейти в «Носители»
- Щёлкните контроллер «Контроллер: SATA».
- Включите параметр «Кэширования ввода/вывода».
Вы также можете проверить любые другие контроллеры и/или диски, чтобы увидеть, есть ли там эта опция.
Сохраните настройки и запустите виртуальную машину, и вы увидите большое улучшение производительности при интенсивном использовании диска.
Есть объяснение, почему эта нужная опция по умолчанию выключена — у неё есть некоторые недостатки. Если коротко, авторы VirtualBox исходят из концепции «безопасность важнее производительности». Рассмотрим подробнее, какие последствия может нести включение этой опции:
1. Отложенная запись через кэш ОС хоста менее безопасна. Когда гостевая ОС записывает данные, она считает данные записанными, даже если они фактически ещё не прибыли на физический диск. Если по какой-то причине запись не произойдёт (сбой питания, сбой хоста), вероятность потери данных увеличивается.
2. Файлы образов дисков обычно очень большие. Кеширование их может поэтому быстро израсходовать весь кэш ОС хоста. В зависимости от эффективности кэширования ОС хоста, это может сильно замедлить работу хоста, особенно, если несколько виртуальных машин работают одновременно. Например, в Linux хостах, кэширование хоста может привести к тому, что Linux отложит все записи до момента, когда кэш хоста почти заполнен, и затем все эти изменения записываются в один раз, это может привести к остановке выполнение виртуальной машины на несколько минут. А это в свою очередь может привести к ошибке ввода-вывода в гостевой системе, поскольку время запросов ввода-вывода истекло.
3. Напрасно расходуется физическая память, поскольку в гостевых операционных системах обычно имеются собственные кеши ввода-вывода, что может привести к двойному кэшированию (как в гостевой, так и в хост машинах) без особого положительного эффекта.
Даже если отключить кэширование ввода-вывода хоста по указанным выше причинам, VirtualBox использует свой собственный небольшой кеш для буферизации записи, но не чтения кэширование, поскольку это обычно уже выполняется гостевой ОС. Кроме того, VirtualBox полностью поддерживает асинхронный ввод-вывод для своих виртуальных контроллеров SATA, SCSI и SAS через несколько потоков ввода-вывода.
На самом деле практика показывает, что данные не теряются, а включение данной настройки отлично сказывается на производительность.
Кроме описанного способа есть ещё один вариант для продвинутых пользователей. Суть в том, что в качестве диска виртуальной машины используется реальный USB диск. С такого диска можно загрузиться как в VirtualBox, так и на физическом компьютере. При этом производительность приближается к работе реального компьютера — никаких задержек, операции обновления и установки больших пакетов происходят с той же скоростью, как на реальном компьютере. О том, как это сделать, смотрите в статье «Как в VirtualBox загрузиться с USB».
Проблема Постоянная загрузка процессора в VirualBox 100%
InetTester
Здравствуйте,
Сразу после загрузки в VirtualBox процессор загружается на 100% при этом виртуализация в bios включена, остальные настройки машины по дефолту, ниже привожу основные сведения о системе.
Основная ОС Windows 10 64 bit
VirtualBox 5.2.18 с установленными гостевыми дополнениями.
ОС на VirtualBox: Win 10 64 bit
Железо: i5 7th
RAM 8GB DDR4
SSD M2
Тормоза на столько сильные что просто невозможно перемещаться по страницам в браузере(задержки по 5-8 сек).
Bypass
Well-known member
Здравствуйте,
Сразу после загрузки в VirtualBox процессор загружается на 100% при этом виртуализация в bios включена, остальные настройки машины по дефолту, ниже привожу основные сведения о системе.
Основная ОС Windows 10 64 bit
VirtualBox 5.2.18 с установленными гостевыми дополнениями.
ОС на VirtualBox: Win 10 64 bit
Железо: i5 7th
RAM 8GB DDR4
SSD M2
Тормоза на столько сильные что просто невозможно перемещаться по страницам в браузере(задержки по 5-8 сек).
ghostphisher
местный
InetTester
Вначале при создании машины выбрал Windows 10 64 bit.
PS: Уже начинаю грешить на дистрибутив стянутый мною из торентов