Сравнение производительности стандартных IDE драйверов и virtio в гостевой системе Windows 2008 Server R2 под управлением KVM

Полная виртуализация — это очень удобная функция, т.к позволяет запускать в виртуальной среде любую операционную систему. Но наряду с этим это медленно, так как гипервизору приходится эмулировать физические устройства такие, как сетевой адаптер.
Virtio — это стандарт в операционной системе Linux для драйверов сетевых и дисковых устройств. При использовании virtio драйверы гостевой операционной системы “знают” что запущены в виртуальной среде и взаимодействуют с гипервизором. Это позволяет достичь большей производительности при работей с сетью и в дисковых операциях.

Специалисты OpenAdmins решили проверить насколько сильно отличается производительность стандартных IDE драйверов и virtio в гостевой операционной системе Windows 2008 Server R2 под управлением гипервизора KVM.

Для этого установлен гипервизор KVM на следующее железо:
  • Процессор Intel® Core™ i5-480M (2,66 ГГц, 3 МБ кэш-памяти L3).
  • Оперативная память DDR3 SDRAM 4 ГБ 1066 МГц.
  • Жесткий диск: SATA II 500 ГБ, 7200 об./мин.
Была создана виртуальная машина с 1 Гб оперативной памяти и на установлена гостевая операционная система Windows 2008 Server R2. К виртуальной машине подключили 4 дисковых устройства:
  1. VirtIO Disk 1 (10 Gb) – установлена OC Windows 2008 Server R2.
  2. IDE Disk 1 – 12 Gb – пустой диск.
  3. IDE Disk 2 (10 Gb) – пустой диск для теста.
  4. VirtIO Disk 2 (10 Gb) – пустой диск для теста.
Окно настроек виртуальной машины в Virtual Machine Manager

Для устройств virtio установлены последние версии драйверов, который взять можно на официальном сайте

В качестве программы тестирования был использован HDTune. Были проведены следующие тесты:
  1. Extra tests
    • IDE драйвер
    • Результаты тестирования Extra Tests стандартного IDE драйвера в гостевой системе Windows 2008 R2 под управлением гипервизора KVM
    • Virtio
    • Результаты тестирования Extra Tests Virtio драйвера в гостевой системе Windows 2008 R2 под управлением гипервизора KVM
  2. Benchmark Read (скорость чтения)
    • IDE драйвер
    • Результаты тестирования Benchmark Read (скорость чтения) стандартного IDE драйвера в гостевой системе Windows 2008 R2 под управлением гипервизора KVM
    • Virtio
    • Результаты тестирования Benchmark Read (скорость чтения) Virtio драйвера в гостевой системе Windows 2008 R2 под управлением гипервизора KVM
  3. Benchmark Write (скорость записи)
    • IDE драйвер
    • Результаты тестирования Benchmark Write (скорость записи) стандартного IDE драйвера в гостевой системе Windows 2008 R2 под управлением гипервизора KVM
    • Virtio
    • Результаты тестирования Benchmark Write (скорость записи) Virtio драйвера в гостевой системе Windows 2008 R2 под управлением гипервизора KVM
  4. Random Access (случайный доступ)
    • IDE драйвер
    • Результаты тестирования Random Access (случайный доступ) стандартного IDE драйвера в гостевой системе Windows 2008 R2 под управлением гипервизора KVM
    • Virtio
    • Результаты тестирования Random Access (случайный доступ) Virtio драйвера в гостевой системе Windows 2008 R2 под управлением гипервизора KVM
Исходя из тестов видно, что диск с установленным драйвером virtio в гостевой операционной системе Windows 2008 Server во всех тестах показал в 2 раза большую производительность, чем его аналог со стандартным драйвером.