Физическая среда или виртуализация? Продолжение тестов Intel Xeon 6242R

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.


В предыдущей статье мы рассказывали о базовой оценке производительности новых серверов в нашем облачном проекте на примере теста Гилёва для 1С и 7zip в физической «нативной» среде.
Теперь же, когда мы подготовили серверы для работы в нашем виртуализованном кластере, можем поделиться результатами тестов в сравнении с результатами аналогичных тестов при установке ОС на физический сервер без использования виртуализации. Таким образом, постараемся увидеть есть ли снижение производительности и насколько оно критично (если есть). Итак, давайте начинать!

Сначала опишем что с чем сравнивали в рамках нашего небольшого эксперимента.
Физический сервер использовался один и тот же — Dell PowerEdge R640 (2x Intel Xeon Gold 6242R, 12x64GB DDR4 3200MHz, 2x240GB SSD) в заводской сборке. ОС, в которой проводились тесты, была одинаковой на физическом сервере и на виртуальной машине далее — это CentOS 8 (4.18.0-240.1.1.el8_3.x86_64). Для тестов в виртуальной среде использовали VMware ESXi 6.7.0, build 15160138.

Что касается характеристик сравниваемых конфигураций, получаем следующее:
1. Физический сервер:
  • 2 процессора по 20 физических / 40 виртуальных ядер (Hyper-Threading)
  • 768 ГБ оперативной памяти (на самом деле объём критической роли не играет)
  • Около 240ГБ полезного пространства на диске С

2. Виртуальная машина:
  • 2 виртуальных процессора по 40 виртуальных ядер
  • 64 ГБ оперативной памяти (достаточный объём для тестов)
  • Около 200ГБ полезного пространства на диске С

Какими тестами будем проверять?
Ограничимся здесь следующим набором тестов:
  1. Sysbench
  2. 7zip
  3. Geekbench

Важный момент: все тесты проводились с включенным Turbo Boost и параметрами максимальной производительности в BIOS. Режим энергопотребления для ESXi — Balanced (по умолчанию).

Итак, какие же получились результаты:
1. «sysbench --test=cpu --num-threads=40 run»
На физическом сервере...
sysbench 1.0.20 (using bundled LuaJIT 2.1.0-beta2)

Running the test with following options:
Number of threads: 40
Initializing random number generator from current time

Prime numbers limit: 10000

Initializing worker threads...

Threads started!

CPU speed:
events per second: 47238.17

General statistics:
total time: 10.0009s
total number of events: 472487

Latency (ms):
min: 0.68
avg: 0.85
max: 1.46
95th percentile: 0.99
sum: 399892.63

Threads fairness:
events (avg/stddev): 11812.1750/824.36
execution time (avg/stddev): 9.9973/0.00


На виртуальной машине...
sysbench 1.0.20 (using bundled LuaJIT 2.1.0-beta2)

Running the test with following options:
Number of threads: 40
Initializing random number generator from current time

Prime numbers limit: 10000

Initializing worker threads...

Threads started!

CPU speed:
events per second: 46474.85

General statistics:
total time: 10.0009s
total number of events: 464850

Latency (ms):
min: 0.74
avg: 0.86
max: 53.87
95th percentile: 1.01
sum: 398802.05

Threads fairness:
events (avg/stddev): 11621.2500/1156.95
execution time (avg/stddev): 9.9701/0.02

Если коротко, результаты можно оформить в следующую таблицу:
Параметр Сервер ВМ Разница
Events per second 47238.17 46474.85 -1.62%
Latency (avg) 0.85 ms 0.86 ms +1.2%

Не такая уж большая разница… Посмотрим, что дальше.

2. 7zip
На физическом сервере...
7-Zip (a) [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,80 CPUs Intel(R) Xeon(R) Gold 6242R CPU @ 3.10GHz (50657),ASM,AES-NI)

Intel(R) Xeon(R) Gold 6242R CPU @ 3.10GHz (50657)
CPU Freq: - - - - - - - - -

RAM size: 772271 MB, # CPU hardware threads: 80
RAM usage: 17650 MB, # Benchmark threads: 80

Compressing | Decompressing
Dict Speed Usage R/U Rating | Speed Usage R/U Rating
KiB/s % MIPS MIPS | KiB/s % MIPS MIPS

22: 219383 7214 2959 213417 | 2433655 7750 2678 207532
23: 207598 7028 3010 211518 | 2418901 7873 2660 209301
24: 204763 7174 3069 220162 | 2364952 7826 2652 207568
25: 198526 7168 3162 226669 | 2384016 7909 2682 212138
---------------------------------- | ------------------------------
Avr: 7146 3050 217941 | 7839 2668 209135
Tot: 7493 2859 213538


На виртуальной машине...
7-Zip (a) [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,80 CPUs Intel(R) Xeon(R) Gold 6242R CPU @ 3.10GHz (50657),ASM,AES-NI)

Intel(R) Xeon(R) Gold 6242R CPU @ 3.10GHz (50657)
CPU Freq: 3769 3775 3772 3772 3773 3771 3772 3772 3772

RAM size: 64134 MB, # CPU hardware threads: 80
RAM usage: 17650 MB, # Benchmark threads: 80

Compressing | Decompressing
Dict Speed Usage R/U Rating | Speed Usage R/U Rating
KiB/s % MIPS MIPS | KiB/s % MIPS MIPS

22: 190208 6089 3039 185035 | 2001333 6449 2646 170665
23: 179252 5785 3157 182637 | 2077835 6995 2570 179789
24: 184889 6251 3181 198793 | 2069792 7037 2582 181662
25: 192625 6794 3237 219932 | 2157590 7441 2580 191990
---------------------------------- | ------------------------------
Avr: 6230 3154 196599 | 6981 2595 181027
Tot: 6605 2874 188813


Результаты кратко:
Параметр Сервер ВМ Разница
Total CPU usage % 7493 6605 -11.8%
Total R/U MIPS (normalized 100% CPU usage) 2859 2874 +0.5%
Total MIPS 213538 188813 -11.6%

Здесь результаты уже интереснее. Видим, что MIPS напрямую коррелирует с показателем Usage. Возможно, 7zip как-то учитывает частоту процессора, которую определяет гостевая ОС. Так как Turbo Boost — аппаратная технология, она не транслируется на уровень ОС виртуальных машин, а доступна лишь гипервизору. Однако, фактическая используемая частота каждого ядра ВМ может легко достигать значений частот в режиме Turbo Boost. Это видно в esxtop.

3. Последний у нас на очереди сегодня — Geekbench 5. Смотрим, что получилось.
Физический сервер: browser.geekbench.com/v5/cpu/5147653
Виртуальная машина: browser.geekbench.com/v5/cpu/5261298
Параметр Сервер ВМ Разница
Single-Core Score 1186 1052 -11.3%
Multi-Core Score 31093 28872 -7.1%

Вот такие получились результаты. Какие-то конкретные выводы отсюда сделать сложно. Можно лишь заметить, что итоговая производительность конкретного приложения зависит от многих факторов и не всегда правильно настроенная виртуальная среда и гостевая ОС дадут просадку в производительности, как мы видим на примере результатов Sysbench.
Ну и, конечно же, не стоит забывать о преимуществах виртуализации в целом (более высокая плотность размещения сервисов, снижение капитальных и операционных затрат, оптимизация энергопотребления, скорость развёртывания и восстановления сервисов).

Надеюсь, статья была для вас интересной и полезной. Ну а мы пошли добавлять этот хост в наш кластер!
Источник: https://habr.com/ru/company/mclouds/blog/533286/


Интересные статьи

Интересные статьи

Весной этого года начались продажи мощного ПК на модульной архитектуре Intel NUC 9 Extreme. Сегодня мы распакуем его версию в максимальной комплектации на процессоре Core i9-9980HK. На...
Первое правило тестовых заданий - никогда не делайте тестовые задания!Об этом уже было множество споров на Хабре, и тут мне выпал случай выучить этот урок на собственной шкуре... Все...
Исследователи из трёх европейских университетов раскрыли детали первой известной атаки на SGX. Набор инструкций SGX (Software Guard eXtensions) позволяет приложению создавать анклавы — области...
Если честно, к Д7 у меня несколько неоднозначное отношение. В некоторых местах я попискиваю от восторга, а в некоторых хочется топать ногами и ругаться неприличными словами.
Вышел третий выпуск подкаста Habr Weekly. Обсуждаем победу Рунета над телевидением, новые процессоры от ARM, новость о создании в России единой системы управления госданными, опыт жизни без смарт...