Несколько недель назад мы начали получать жалобы, о том, что на нашем сайте частота процессора указана выше, нежели на VPS сервере фактически. Это не так, и сейчас мы разберемся почему.
У каждого процессора есть базовая тактовая частота. Например, у процессора Intel® Xeon® E3-1275 v6 базовая тактовая частота 3,80 GHz. Но у данного процессора есть технология «Turbo Boost» . Данная технология позволяет работать процессору на более высокой частоте 4,20 GHz. Другими словами, фактическая производительность повышается. К сожалению, виртуализации KVM и OpenVZ показывают не фактическую, а базовую частоту ядра процессора внутри VPS. О данной проблеме задано много вопросов и есть много топиков, посвященных данной проблеме:
https://forums.unraid.net/topic/51970-turbo-boost-cpu/?tab=comments#comment-511114
https://stackoverflow.com/questions/37293959/intel-turbo-boost-for-kvm-guest
Мы решили провести тесты и показать, что то, что показывает команда cat /proc/cpuinfo внутри VPS, не является правдой. Тестирование проводилось на процессоре Intel Xeon E3-1285 v6 с выключенным и включенным режимом Turbo Boost на примере CMS Bitrix и теста Unixbench, который очень сильно зависит от частоты процессора.
Тестирование с выключенной функцией «Turbo Boost» в автоматическом режиме
Первое тестирование проводилось с выключенной функцией «Turbo Boost» в автоматическом режиме (экономии энергии).
На скриншоте показан результат производительности Bitrix, а также открыто 2 консоли с тактовой частотой процессора.
- Слева — это частота процессора мастер ноды, где создан VPS сервер.
- Справа — это тактовая частота VPS сервера.
Сразу же в глаза бросается то, что на мастер ноде тактовая частота процессора 800 MHz, а на VPS сервере 4100 MHz.
Такое отображение связано с информацией о процессоре. На VPS сервере отражается базовая тактовая частота, и неважно, какая реальная частота на мастер ноде. В итоге, если на ноде нет нагрузки, то Ваш VPS будет работать с частотой под 900 Mhz вместо заявленных 4100 Mhz. Неприятно, не правда ли?
Тестирование с выключенной функцией «Turbo Boost» с поднятием частоты до максимальной базовой без режима экономии энергии
Второе тестирование проводилось также с выключенной функцией «Turbo Boost», но с поднятием частоты до максимальной базовой без режима экономии энергии на процессоре (всегда держится базовая частота процессора).
Сейчас мы видим, что частота на мастер ноде и на VPS сервере 4100 MHz. При этом можно заметить, что производительность Bitrix увеличилось с 94 до 143 попугаев. Это огромный прирост производительности! Тем не менее, нам интересен результат именно с режимом «Turbo Boost».
Тестирование с включенной функцией «Turbo Boost»
Третье тестирование мы уже проводили с включенной функцией «Turbo Boost». Частота держится всегда на 4500 Mhz и никаких экономий энергии!
Сейчас мы видим, что тактовая частота на мастер ноде 4500 MHz, но на самом VPS сервере частота находится на отметке 4100 MHz. При этом видно, что производительность сайта на Bitrix увеличилась еще на 24 попугая.
Для самых недоверчивых проведем математические расчеты:
Соотношение частоты 4100 и 4500. Получаем прирост в 10%.
Показатель производительности Битрикс при частоте 4100 — 144, при частоте 4500 — 167. Прирост 16%.
Оказалось, что прирост производительности даже чуть больше, чем выросла частота фактически, что не может не радовать. Это связано с тем, что чем больше частота процессора, тем больше коэффициент роста попугаев битрикса и скорости загрузки сайта.
Исходя из вышеописанного можно сделать вывод, что не стоит смотреть на тактовую частоту, которая указана на сервере в /proc/cpuinfo, т.к там указана базовая тактовая частота процессора. Она показывает только базовую частоту процессора, а не ее фактические значения.
Вы спросите, как тогда проверить, какая частота действительно на VPS сервере? К сожалению, пока мы не нашли решения, чтобы на самой VPS указывалась реальная частота в связи с особенностями виртуализаций. В данном случае, мы рекомендуем проверять опытным путем, а именно — скоростью загрузки сайта или через тесты на примере битрикса.
А как на Админвпс?
Мы всегда включаем режим «Turbo Boost» и всегда поднимаем частоту до максимальной на любом нашем сервере, т.к. знаем, что нужно, чтобы клиенты были довольны, а их сайты работали максимально быстро! Если же вы хотите добиться максимально возможной производительности, мы рекомендуем вам выбирать мощные процессоры на режиме «Все включено».