Насколько быстр KVM?

Nutanix любит KVM, это ни для кого не секрет. Несмотря на то, что мы поддерживаем и разрабатываеи решение также под VMware vSphere и Microsoft Hyper-V, явно видно, что KVM есть то, что мы особенно любим. Это неудивительно, он свободен, быстр, и обходится компаниям дешевле. И если он выполняет все те задачи, что выполняет и коммерческий гипервизор, «то зачем платить больше»?
Но когда кастомеру говоришь про KVM, как альтернативу коммерческим гипервизорам, то почти всегда возникает встречный вопрос: «А насколько он быстр, этот ваш KVM?»

Недавно я нашел небольшое исследование за лето 2014 года, в котором человек замерял производительность двух свободных гипервизоров, KVM и Xen, в сравнении с baremetal-выполнением теста производительности, то есть без виртуализации.

Выводы:
Производительность KVM была ниже на 1.5% от «bare metal» (сервера без виртуализации) в почти всех тестах. Только в двух тестах эта величина была превышена. Один из них это тест 7-Zip, где KVM был на 2.79% медленнее, чем «bare metal». Неожиданно было то, что KVM оказался на 4.11% быстрее, чем «bare metal» на тесте PostMark (который эмулирует очень загруженный почтовый сервер). Я перезапустил PostMark заново, на обоих серверах, и результаты не отличались более чем на 1% от первоначальных. Я покопаюсь в этом еще, но мои знания внутреннег устройства фреймворка virtio неглубоки.

Производительность Xen относительно «bare metal» варьировалась сильнее, чем у KVM. В трех тестах Xen укладывался в 2.5% снижения относительно скорости физического сервера, но остальные были существенно хуже. Тест PostMark был на 14.41% медленнее под Xen, в сравнении с физическим сервером, и меня этот результат удивил. Я перезапустил тест, и повторный прогон отличался не более, чем на 2% от оригинального. Наилучший тест KVM на производительность CPU, MAFFT alignment, был вторым наихудшим результатом Xen.

Оригинал на английском можно посмотреть там. Там же есть ссылки и на более ранние исследования темы, поазывающие, среди прочего, как здорово растет KVM с точки зрения производительности.
Заодно это исследование отвечает на второй по популярности вопрос: «Какова разница в производительности с сервером без виртуализации?», то есть каков overhead виртуализации сегодня?

Насколько быстр KVM?: 11 комментариев

  1. Evgeniy Akimov

    Обожаю KVM, но хочу заметить, что измерять производительность CPU на современных гипервизорах — это почти что мартышкин труд. Гораздо интересней посмотреть производительность I/O, в связи с чем есть пару вопросов:
    1) Каким образом в Acropolis организовано выделение дисковых ресурсов виртуальным машинам?
    2) Будет ли использоваться (рекомендоваться) vitio для дисков и сети?

    1. romx Автор записи

      1. Не вполне ясен вопрос, уточните?

      2. Virtio? Он и используется.

      1. Evgeniy Akimov

        В смысле делал ли Nutanix что-то подобное libgfapi, но для NDFS или гипервизор видит NFS по аналогии с vSphere?

        1. Maxim Shaposhnikov

          На каждый vdisk — отдельный iSCSI поток, таким образом мы обошли проблему однопоточности iSCSI.

          Имплементация iSCSI у нас своя, значительно быстрее и лучше стандартной.

          Итого, на KVM скажем на хосте если у вас 100 VM, каждая с 4-я дисками — то будет 400 потоков iSCSI.

  2. Valery

    Не совсем корректный подход. С одной стороны, «Но когда кастомеру говоришь про KVM, как альтернативу коммерческим гипервизорам», а с другой — сравниваются KVM, Xen и bare metal.

    То, что виртуальные машины в некоторых тестах бывают быстрее, чем bare metal, это уже давно не новость. А вот сравнение KVM с vSphere было бы куда интереснее посмотреть.

    1. romx Автор записи

      Ну, в данном случае отвечался один конкретный вопрос, про virtualization overhead у KVM, и результак, как вы видите, весьма хорош. Причем, важно отметить, что он довольно существенно улучшился у KVM за последние несколько лет.

      Найду сравнение с vSphere — обязательно опубликую. Но, думаю, вряд ли vSphere будет существенно хуже, чем KVM. Думаю, что разница в величине оверхеда уже в пределах единиц процента.

    1. romx Автор записи

      Да, но я ее уже пару раз давал, во-первых, а во-вторых мне показалось, что это пока не слишком популярный бенчмарк, к тому же там почти один только KVM, который меряется сам с собой.

  3. Evgeniy Akimov

    «к тому же там почти один только KVM» — так этот факт и кажется мне наиболее интересным на этой странице )

    1. romx Автор записи

      Но им трудно убедить тех, кто к KVM относится с подозрением, хотелось бы видеть именно сравнение.

      1. Evgeniy Akimov

        Вряд ли получится сравнивать в лоб, например с vSphere

        from: http://www.vmware.com/download/eula/esxi50_eula.html

        2.4 Benchmarking. You may use the Software to conduct internal performance testing and benchmarking studies. You may only publish or otherwise distribute the results of such studies to third parties as follows: (a) if with respect to VMware’s Workstation or Fusion products, only if You provide a copy of Your study to benchmark@vmware.comprior to distribution; (b) if with respect to any other Software, only if VMware has reviewed and approved of the methodology, assumptions and other parameters of the study (please contact VMware at benchmark@vmware.comto request such review and approval) prior to such publication and distribution.

        Попахивает Эллисоном…

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *