Search
Write a publication
Pull to refresh

Comments 7

Выглядит это конечно довольно забавно: инструкции призванные для увеличения производительности на деле замедляют ее. Не знаю правильно ли я понял что это имеет место только для многопоточного случая, однопоточный режим работы наоборот получает повышение производительности?

насколько я понимаю, уменьшение производительности тут косвенное ввиду неоднородной нагрузки, так как кроме собственно шифрования мы еще параллельно обслуживаем вебсервер, который начинает страдать от сниженной частоты. Если бы мы Только шифровали, эффект был бы положительным.

Стало интересно. Судя по ссылки из примечания переводчика процессор занижает частоту чтобы остаться в нужных пределах по нагреванию (TDP). Типа AVX инструкции требуют большее энергии:

«Intel AVX instructions require more power to run. When executing these
instructions, the processor may run at less than the marked frequency to maintain
thermal design power (TDP) limits.»
Комментарии выше верны: PCU «видит» исполнение инструкций AVX и в некоторых случаях (для некоторых инструкций) соответствующим образом снижает частоту. Изменение частоты занимает какое-то время, и даже небольшое число инструкций способно продержать процессор на пониженных частотах довольно долго (в некоторых источниках указывается время реакции на отсутствие AVX команд в 1 мс, что по меркам процессора вечность). В это же время на процессоре исполняется и «обычный» код, который от понижения частоты страдает. А так как как обычного кода в тестах автора подавляющее большинство, то и общая производительность падает довольно значительно.
Если вам не требуется использование AVX-512 для специфических вычислительно-ёмких задач, я предлагаю вам выключить их поддержку на ваших серверах

Не настолько силен в настройке серверов. Как-то можно отключить набор инструкций? Т.е. имеется в виду отключить на уровне сервера, я верно понял?
Пока мало видел серверов на Skylake, но, скорее всего, в BIOS просто так выключить набор инструкций нельзя. В ход можно пустить маскирование результатов инструкции CPUID (в основном, в виртуализации), либо пересборку ПО без использования этих инструкций.
Sign up to leave a comment.

Articles