Введение
Здравствуйте, уважаемые посетители. Не так давно вышла новая версия Oracle VM VirtualBox, где добавили возможность выбора интерфейса паравиртуализации для виртуальной машины. Данная функция преподносится как возможность повышения производительности гостевой операционной системы. Меня этот момент очень сильно заинтересовал. В особенности заинтересовало то, как сказывается на работе гостевой ОС выбор разных интерфейсов, а также то, какой именно интерфейс паравиртуализации нужно выбирать для обеспечения максимального быстродействия гостевой операционной системы Windows 7 x64.
Операционные системы Windows, начиная с Windows 7, поддерживают интерфейс Microsoft — Hyper-V, так что вполне логично, что для работы гостевой ОС Windows 7 x64 нужно выбирать именно его. Тем не менее, мне захотелось узнать, как будет влиять на производительность гостевой ОС каждый из доступных в VirtualBox интерфейсов паравиртуализации. Я начал искать в интернете информацию на эту тему, однако не нашёл нужных мне результатов, поэтому решил провести тестирование самостоятельно, о результатах которого и пойдёт речь в этом посте.
На данный момент, для виртуальной машины можно выбрать один из доступных интерфейсов: совместимый, минимальный, Hyper-v, KVM или же отключить его вовсе:
Интерфейсы паравиртуализации, доступные для выбора в Oracle VM VirtualBox
В справке к VirtualBox указано, что большинство современных ОС Windows и ОС на базе ядра Linux поддерживают один или несколько интерфейсов паравиртуализации и как правило, для использования паравиртуализации не требуется дополнительное программное обеспечение (включая в том числе и дополнение для гостевых ОС VirtualBox Guest Additions). Помимо этого, в справке можно найти краткое описание интерфейсов. Минимальный указывается как необходимый для операционных систем Mac OS X. KVM — рекомендуется для гостевых ОС на базе ядра Linux. Hyper-V — поддерживается операционными системами Microsoft, начиная с Windows 7, соответственно для них и рекомендуется его использовать, а также для ОС FreeBSD.
Как работает виртуальная машина
Гипервизор создает файл образа жесткого диска, резервирует определенное количество оперативной памяти и занимает процессорное время — это необходимо для работы «контейнера», в котором будет работать виртуальная машина. Изнутри же «контейнер» выглядит как полноценный компьютер с жестким диском, оптическим приводом, дисководом, сетевой картой, видеоадаптером, звуковой картой и прочим оборудованием. Причем заменить видеокарту обычно нельзя — она эмулируется как встроенная в материнскую плату. А вот в оптический привод можно либо загрузить образ из файла, либо использовать существующий привод хоста.
Процессор виртуализируется как минимум одним ядром. Для старых систем лучше не использовать многоядерность — не поймут, испугаются и будут глючить. А новым больше двух ядер нужно выдавать только при реальной необходимости.
Подключенные к хосту USB-устройства можно пробросить внутрь виртуальной машины. Достаточно выбрать для конкретной машины нужный пункт из меню «Устройства — USB». При этом, например, флэшка исчезнет из списка накопителей в хост-системе и станет видна в виртуальной машине. Также можно поступить с любым другим USB-устройством, но не забудьте сначала установить Extensionpack, иначе скорость USB 1.1 вас огорчит.
Чтобы файлы на основной системе были доступны в виртуальной ОС можно воспользоваться общими папками: они монтируются как сетевые пути, но удобнее автоматически их монтировать как сетевой диск — он будет подключаться при загрузке системы. Подробности разберем на этапе настройки.
Виртуальная машина и SSD диск
Первым и лучшим усовершенствованием компьютера на сегодняшний день является установка на него SSD диска. Это ощутимо ускорит работу компьютера, а соответственно и установленной на нём виртуальной машины.
Некоторые пользователи устанавливают виртуальные машины на другой (HDD) диск своего компьютера, оставляя на SSD диске лишь основную операционную систему. Это делает работу виртуальной машины медленнее. Освободите место на SSD диске и перенесите виртуальную машину на него. Разница в скорости работы почувствуется с первых минут.
По возможности, не размещайте диски виртуальных машин на внешних носителях информации. Они работают ещё медленнее чем встроенный HDD диск. Возможны варианты с подключением виртуальной машины через USB 3.0, но о USB 2.0 и речи быть не может – виртуальная машина будет работать очень медленно.
Динамический или фиксированный виртуальный жесткий диск?
Создавая виртуальную машину, можно создать два разных типа виртуальных жестких дисков. По умолчанию виртуальная машина использует динамический диск, который занимает необходимое место на физическом носителе информации и увеличивается лишь по мере заполнения.
Например, создавая виртуальную машину с динамическим диском в 30 ГБ, он не займёт сразу же 30 ГБ жесткого диска компьютера. После установки операционной системы и необходимых программ его размер будет порядка 10-15 ГБ. Лишь по мере добавления данных, он может увеличиться до 30 ГБ.
Это удобно с той точки зрения, что виртуальная машина будет занимать на жестком диске место, которое пропорционально объёму хранимых на ней данных. Но, работа динамического жесткого диска медленнее фиксированного (иногда также называют распределённым).
Создавая фиксированный диск, все 30 ГБ на жестком диске компьютера будут выделены под диск виртуальной машины сразу же, независимо от объёма хранимых на нём данных. То есть, фиксированный жесткий диск виртуальной машины занимает больше места жесткого диска компьютера, но сохранение или копирование файлов и данных на нём происходит быстрее. Он не так сильно подвержен фрагментации, так как пространство под него выделяется максимально большим блоком, вместо того, чтобы добавляться маленькими частями.
Кодирование видеофрагмента кодеком x264 64-bit
Для тестирования использовалась программа Xvid4PSP, версия 5.10.330.0_(2013-03-21)_rc33.1.Кодирование осуществлялось 64-bit версией кодека x264. Видеофрагмент для кодирования — видеозапись с цифровой камеры, закодированная кодеком MJPEG, длительность 62 секунды. Кодирование осуществлялось один раз, поскольку последующие запуски давали точно такой же результат, секунда в секунду. Результаты на диаграмме:
Результаты тестирования — кодирование видеофрагмента кодеком x264 64-bit
Кодирование видео уже более приближено к реальной работе, нежели синтетические тесты быстродействия, посему эти результаты лично для меня наиболее интересны. Быстрее всего выполнил кодирование конечно же хост, всего за 86 секунд. На втором месте по скорости — Hyper-V, кодирование выполнено за 134 секунды, что более чем в полтора раза дольше, но тем не мнее значительно быстрее, чем результаты при работе с другими интерфейсами. Для сравнения, разница в производительности между Hyper-V, совместимым и минимальным интерфейсами, составила целых 7 процентов, что уже можно назвать существенной разницей.
Результаты этих тестов подтвердили, что для работы гостевой ОС Windows 7 x64 необходимо использовать интерфейс паравиртуализации Hyper-V для достижения максимальной скорости работы. Но, вместе с тем, показали, что разница в производительности будет не всегда значительной.
Падение фпс при бездействии системы
Вложения
CollectionLog-2018.09.04-00.51.zip (74.3 Кб, 5 просмотров) |
Падение ФПС через 30-40 минДобрый вечер. Через полчаса, час, полтора, но в определённый момент в игре резко падает FPS.
Падение ФПС в играх после 10-15 минут их работыДобрый вечер Уважаемые форумчане Суть проблемы такова. Вариант 1. Включаю ноутбук, запускаю.
Резкое падение фпс после 15 мин их работыДоброго времени суток. Суть проблемы: После перезапуска компьютера любая игра нормально.
Если не самостоятельно создавали задачи, Пофиксите в HijackThis следующие строчки:
Задачки сам делал, они на разок.
Проблема то уже давно, с февраля, интересно сколько я намайнил. Особо сильно не напрягала, поэтому после проверки кюритом забил, естественно он тогда ничего не нашел. Вчера переклинило и после создания темы пол часа наблюдал и экспериментировал с диспетчером задач. два приложения «Turbo Virtual Machine Executable» исполняемые файлы: «NvGpuUtlization.exe» & «dHost.exe» и в этом же каталоге нашел «igfxpers.exe» который бывало крашился, скачиваются снова за моргание ока даже на диалапе. Попробовал нодом проверить, после ребута процессы не подгрузились, бэкапы исполняющих и мусор остался лежать по пути, удалил весь каталог Min32, загружаться пока не собираются. Просады пропали. Приложу журнал нода. Или всетаки лучше предложенным вариантом просканировать?
Вложения
nod32zhurnalJPG.rar (132.7 Кб, 3 просмотров) |
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.
Падение фпс после 20 мин включения компьютераПоявилась проблема совсем недавно.После 20 мин работы начинает резко проседать фпс и кажется,что.
Падение ФПС в играх после 10-15 минут их работыДобрый вечер Уважаемые форумчане Суть проблемы такова. Вариант 1. Включаю ноутбук, запускаю.
Падение ФПС в играх через 10-15 минут после запускаДоброго времени суток! Суть проблемы такова:После включения компьютера и запуска игры через 10-15.
Установка
Чтобы начать знакомство с виртуальной машиной потребуется установить гипервизор. Таковых существует множество: платных и не очень, для тонкой настройки всего и вся или базового «нажал — заработало». Virtualbox — один из наиболее популярных гипервизоров, потому что бесплатный, доступен под Windows, Mac OS и Linux, активно развивается и поддерживается сообществом разработчиков и энтузиастов. Скачать VirtualBox можно с официального сайта, но учтите, он на английском.
Начиная с шестой версии в VirtualBox убрали поддержку 32-битных хост-систем, но пятая версия до сих пор доступна для скачивания. В любом случае, можно скачать обе версии. Для более комфортной работы потребуется еще и набор расширений — ExtensionPack.
Устанавливается VirtualBox довольно просто, достаточно последовательно соглашаться со всеми предложениями. Перед установкой появится большое предупреждение о том, что компьютер будет отключен от сети, на время установки виртуальных сетевых карт — это нормально. А в ходе установки появится несколько подтверждающих окон — это устанавливается эмулятор USB, сетевых карт и других устройств.
Ну а после установки появится основное окно гипервизора на родном русском языке.
Первым же делом желательно установить пакет расширений — он добавляет поддержку USB 2.0, подключение по протоколу RDP, поддержку накопителей с NVMe и прочие полезные вещи. В стандартной установке все эти возможности отсутствуют из-за различных лицензий: сам гипервизор бесплатный во все стороны, а расширения бесплатны только для личного пользования и ознакомления.
Чтобы установить расширения достаточно запустить файл Extensionpack дабл-кликом, но делать это нужно после установки самого Virtualbox — потому что установщик расширений запускается внутри гипервизора.
Настраиваем взаимодействие с хостом и сеть
Виртуальная машина с настройками «по умолчанию» получает доступ в интернет, но не имеет никакой связи с основным компьютером. А иногда эта связь нужна…
В настройках можно включить двусторонний буфер обмена. Он, правда, работает только с текстовой информацией, но упрощает ввод интернет-адресов и консольных команд. Для приема-передачи файлов можно настроить сетевые папки. Любая папка на хосте может быть подключена в виде сетевой папки в гостевой системе. Дополнительно можно выдать права гостевой системе на запись в эту папку и автоматически подключать папку в качестве диска при загрузке системы. Так, например, папка Downloads на хост-системе может быть доступна из гостевой системы через сетевое окружение по адресу //vboxsvr/Downloads или автоматически подключаться как сетевой диск.
Для экспериментов с Linux-системами и виртуальными серверами часто требуется доступ из хоста к веб-серверу, который запускается на гостевой ОС. Для этого нужно переключить режим сетевой карты с «NAT» на «виртуальный адаптер хоста» или же «Virtualbox Host-only Ethernet Adapter». В последнем случае у гостевой системы не будет личного доступа в интернет, но она сможет общаться с основным компьютером. Так, например, с хоста можно постучаться на файловый сервер, который работает на виртуальной машине.
В данном случае это специализированный linux-дистрибутив openmediavault для создания сетевого хранилища, который запущен в виртуальной машине с типом сетевого адаптера «только хост».
Улучшение производительности внутри виртуальной машины
Всегда необходимо помнить, что установленная на виртуальную машину операционная система мало чем отличается от той, которая работает на основном компьютере. Её работу можно ускорить, следуя тем же принципам и используя те же методы, которые актуальны для любой другой операционной системы.
Например, производительность системы увеличится если закрыть фоновые программы или те, которые автоматически запускаются при старте системы. На производительность системы влияет необходимость осуществления дефрагментации диска (если виртуальная машина расположена на HDD диске), и так далее.
Установить гостевые дополнения
Первое, что нужно сделать, если вы столкнулись с медленной виртуальной машиной VirtualBox, — это установить гостевые дополнения. Причина? Гостевые дополнения включают в себя несколько улучшений, драйверов и улучшений VirtualBox, которые могут значительно повысить скорость и отзывчивость вашей виртуальной машины.
Чтобы установить гостевые дополнения, запустите виртуальную машину и загрузите ее в установленную на ней операционную систему. Затем, когда ОС будет запущена, нажмите кнопку Правый Ctrl кнопку, чтобы получить доступ к элементам управления Virtualbox VM.
После того, как вы нажали Правильно Ctrl нажмите кнопку, найдите меню «Устройства» и щелкните по нему мышью. Оттуда найдите «Вставить образ компакт-диска с гостевыми дополнениями» и щелкните его. Virtualbox автоматически загрузит ISO-файл гостевых дополнений и вставит его в вашу виртуальную машину.
Примечание: если Virtualbox не может загрузить ваш ISO автоматически, возьмите этот образ ISO и вставьте его в виртуальную машину, щелкнув значок компакт-диска и нажав кнопку «Выбрать образ диска».
После вставки ISO-файла гостевых дополнений вернитесь к виртуальной машине Virtualbox и откройте окно терминала. Чтобы запустить окно терминала на виртуальной машине Linux, нажмите Левый Ctrl + Shift + T или Левый Ctrl + Alt + T. Затем при открытом окне терминала используйте компакт диск команда ниже.
cd /media/$USER/VBox_*
Или
cd /media/cdrom
Запустите сценарий оболочки autorun.sh в каталоге гостевых дополнений.
sudo sh autorun.sh
Позвольте сценарию установить гостевые дополнения VirtualBox на вашу виртуальную машину. Когда процесс будет завершен, перезагрузите виртуальную машину.
Зачем нужны виртуальные машины
В деловых процессах виртуальные машины используются активно — там это нужно. Центры обработки данных, облачные вычисления, виртуальные серверы, разграничение доступа и все такое. На одном и том же железе может работать отдельный файловый архив, отдельный веб-сервер, отдельный сервер авторизации — и все на разных системах, полностью изолированных друг от друга. Но зачем нужна технология виртуальных машин обычному домашнему пользователю?
Вот простой пример: у вас есть компьютер и на нем, скорее всего, установлена операционная система Windows. Для изучения программирования вам требуется linux, но вы не хотите экспериментировать со своим компьютером, разбивать личный диск на несколько разделов и рисковать потерей данных. Виртуальная машина позволит работать в другой системе, при этом родная Windows никак не пострадает.
Или, например, есть очень важная и нужная программа, которая запускается только под WindowsXP конкретной версии и сборки. Причем эта программа откажется запускаться, если оперативной памяти больше 128 мегабайт. Можно отпилить часть микросхем от современного модуля на 16 гигабайт, но что-то вам подсказывает, что так делать не нужно. А вот виртуальная машина поможет запустить капризный софт, эмулируя компьютер с нужным объемом памяти.
А вот, допустим, игра двадцатилетней давности, которую вы нашли на антресолях и пытаетесь установить в приступе ностальгии. Игра отказывается верить в существование восьмиядерного процессора и вылетает с ошибкой «так не бывает». Виртуальная машина с нужными характеристиками поможет вспомнить былые времена и запустить игру.
Часто виртуальная машина используется в качестве «песочницы» — маленькой игровой площадки для программы, которая вызывает у вас подозрения. Чтобы не рисковать, вы запускаете сомнительную программу внутри виртуальной машины, а не на настоящем компьютере: софт честно делает свою работу, потом шифрует все файлы и требует денег, например. Но в виртуальной системе, в той самой «песочнице» не было никаких ценных данных, поэтому вы можете спокойно удалить виртуальную машину с наглой программой внутри. Здорово же!
Наконец, приверженцы техники Apple или убежденные Linux-пользователи тоже могут использовать виртуальную машину, чтобы запустить какой-то специфический софт, который работает только под Windows.
Как видите, даже для домашнего пользования виртуальные машины могут пригодиться. Поэтому разберемся с основными характеристиками и научимся создавать компьютер в компьютере.
Ускорить работу VirtualBox
О том как сделать так, чтобы виртуальные операционные системы работали в нем быстрее мы расскажем вам далее.
Комплектующие вашего сервера или ПК
Самым весомым аргументом в быстрой работе ОС в Virtualbox является высокопроизводительные комплектующие. Для более или менее комфортной работы вам потребуется:
- Процессор Intel серии Core i5, аналогичный или более мощный
- Оперативная память от 8 GB
- SSD или HDD с достаточным количеством свободной памяти (Одна установленная ОС минимум 8 GB)
На более медленном железе заставить быстро работать VirtualBox у вас не получиться, чтобы вы не делали.
Настраиваем UEFI/BIOS
Современные процессоры Intel и AMD обладают возможностью аппаратной виртуализации , включение этой опции в может значительно ускорить работу виртуальной машины VirtualBox. Для этого необходимо включить параметры Intel VT-x или AMD-V.
Настраиваем VirtualBox
Теперь рассмотрим те опции которые следует включить или изменить в VirtualBox, для ускорения работы виртуальной машины.
Расположение виртуальных машин
Если ваш компьютер обладает более чем одним диском (HDD или SSD), то самой первоначальной настройкой которую стоит изменить — это «папка для машин по умолчанию». Выполнить данную настойку необходимо потому что, при работе отдельных программ и ОС могут вызвать задержки в дисковой подсистеме, чтобы этого не происходило, необходимо размещать «виртуалки» на другом диске.
Еще лучше, если это будет SSD диск
Единственно на что стоит обратить внимание, так это то, что не стоит указывать внешний накопитель, так скорость обращения чтения/записи будет значительно ниже, чем с внутренних дисков
Чтобы задать «папку по умолчанию» вам необходимо на панели выбрать «Файл» и перейти во вкладку «Общее».
Во время создания виртуальной машины следует обратить внимание на следующее параметры:
Настройка параметров виртуальной машины
После того как виртуальный жесткий диск был создан, можно выполнить настройку,чтобы выделить ОС какие-либо ресурсы.
Раздел «Система»
В разделе «Система» вкладка «Процессор» поставьте галочку напротив «Включить PAE/NX» если вы виртуальной системе предоставили более 4 GB.
Укажите приемлемое количество ядер процессора.
Во вкладке «Ускорение» включите аппаратную виртуализацию поставив галочку напротив «Включить VT-x/AMD-V» и «Включить Nested Paging».
В выпадающем списке «Интерфейс паравиртуализации» укажите:
- Hyper-V — для ОС Windows
- KVM — для операционных систем на ядре Linux (Ubuntu, Fedora, OpenSuse, Mint, Debian)
Раздел Дисплей
В разделе «Дисплей» поставьте галочку напротив «Ускорение: Включить 3D-ускорение», если вы используете ОС Windows, то также отметить и «Включить 2D-ускорение».
Раздел «Носители»
В разделе «Носители» выберите виртуальный контроллер SATA на котором будет установлено (или уже установлена) виртуальная машина и поставьте галочку напротив «кэширование ввода/вывода»
После того как вы установите операционную систему в виртуальную машину, следует сразу же стоить подключить дополнения гостевой ОС и установить «драйвера» для виртуальных Windows или Linux и перезагрузить систему.
Увеличить количество ядер в ВМ
Обычные пользователи виртуальных ящиков, которые настраивают виртуальную машину Linux, не думают о ядрах процессора. Они идут с настройкой по умолчанию для одного ядра, а затем задаются вопросом, почему их виртуальная машина такая медленная. Если вы хотите сделать это немного быстрее, измените количество ядер, которое может использовать ваша виртуальная машина.
Для начала определите, сколько ядер у вашего центрального процессора. Вы можете узнать эту информацию, посмотрев на свой компьютер или руководство по процессору.
Определив, сколько ядер у вас есть на вашем хост-компьютере, прочтите список ниже, чтобы узнать, сколько ядер предоставить вашей виртуальной машине VirtualBox.
- Хост-процессоры с 4 ядрами должны использовать 2 ядра.
- Хост-процессоры с 6 ядрами должны использовать 2-4 ядра.
- Хост-процессоры с 8–12 ядрами должны использовать 4 ядра или более.
После того, как вы определили, сколько ядер использовать, выключите виртуальную машину VirtualBox, затем выберите ее в пользовательском интерфейсе VirtualBox, щелкните ее правой кнопкой мыши и выберите параметр «Настройки».
В разделе «Настройки» найдите параметр «Система» и щелкните по нему мышью. После этого найдите вкладку Процессор.
Найдите область «Процессор (ы)» и перетащите ползунок на желаемое количество ядер. Нажмите кнопку «ОК», чтобы сохранить настройки.
Что такое виртуальные машины
Виртуальная машина — это эмулятор компьютера в самом широком смысле. Это почти как эмулятор игровой приставки или Android-устройства, только настраивается гораздо гибче.
Например, на эмуляторе Sony PlayStation не получится запустить игру под Nintendo GameBoy. А эмулятор DOSbox — это очень условный, специализированный виртуальный компьютер с эмуляцией определенного списка старого оборудования и со встроенной системой DOS, так что запустить там Windows 10 не получится.
Виртуальная машина же — это эмулятор персонального компьютера с практически любым железом. И на этот компьютер можно устанавливать любую операционную систему и программы, которые нужны.
Методика тестирования
В качестве операционной системы хоста использовалась Windows 7 x64, эта же версия использовалась в качестве гостевой ОС. Версия VirtualBox — последняя на момент написания поста — 5.0.2. Для тестирования мною была создана отдельная виртуальная машина со следующими настройками:
Настройки виртуальной машины
Как видите, я выделил виртуальной машине 2000 МБ памяти из имеющихся 4 ГБ и все четыре процессорных ядра. Помимо этого, включил 2D и 3D ускорение видео, всё для того, чтобы гостевая ОС Windows 7 x64 чувствовала себя как можно лучше.
Для измерения производительности использовались следующие программы: Intel linpack x64, тест производительности, встроенный в программу 7-zip x64, AIDA64 — тест быстродействия оперативной памяти, Xvid4PSP — кодек x264 64-bit.
Тестирование производилось следующим образом: я запускал виртуальную машину с определённым интерфейсом паравиртуализации, выполнял последовательно все тесты, сохраняя результаты. После виртуальная машина отключалась и запускалась вновь, но уже с другим интерфейсом, при этом все остальные настройки оставались неизменными. Все тесты также были выполнены и в операционной системе хоста, чтобы можно было сравнить результы и определить на сколько процентов отличается производительность. При этом отмечу, что все процессы, кроме необходимых для работы ОС, были остановлены как в гостевой, так и в операционной системе хоста, дабы нивелировать влияние посторонних факторов на результаты теста.
Поддержка 3D
Oracle VM VirtualBox имеет базовую поддержку технологий 3D. Благодаря 3D вы сможете запускать на виртуальной машине не слишком требовательные к ресурсам игры, а также наслаждаться эффектами Aero. По умолчанию поддержка 3D отключена. Чтобы установить ее, вам нужно закрыть виртуальную машину, перейти в настройки и в разделе “Дисплей” установить соответствующие галочки. Затем, загрузив виртуальную операционную систему в безопасном(!) режиме, установить или переустановить Дополнения гостевой ОС, не забыв при этом в окне установщика отметить галочкой пункт “Direct3D Support…”. Установить драйвер поддержки 3D в обычном режиме не получиться, а если попытаетесь это сделать, то получите вот такое предупреждение.