По скорости 'Эльбрусы' приблизились к процессорам Intel 6-летней давности
Серверные процессоры "Эльбрус" энтузиаст сравнил по производительности с распространёнными моделями Intel и AMD.
В Сети появились результаты частного сравнительного исследования производительности отечественных процессоров "Эльбрус-8C". Выводы эксперта под ником Seti уже некоторое время размещались на интернет-форумах. 27 февраля 2020 г. их на своем сайте опубликовал Максим Горшенин, сотрудник МЦСТ - компании, занимающейся разработкой упомянутых чипов.
"Эльбрус-8C" представляет собой восьмиядерный центральный процессор серверного класса. Заявленная тактовая частота - до 1300 МГц. Чип спроектирован и изготовлен по технологическим нормам 28 нм. Его архитектура позволяет выполнять до 25 операций за один такт в каждом ядре - 250 млрд операций с плавающей запятой в секунду.
Автор исследования отмечает, что ему удалось оценить производительность не косвенным, а прямым методом. "И это очень интересно, - полагает он. - В том числе и потому что очень большое число прикладных задач из коммерческого сектора, связанных с базами данных, web-серверамии т. п. в основном выполняют операции не с плавающей точкой (хотя и их бывает немало), а с целыми числами".
Для исследования были использованы ресурсы тематического проекта RakeSearch Карельского научного центра Российской академии наук.
Сперва автор исследовал однопоточную производительность. При этом он признает, что сама по себе она мало что значит, но позволяет сделать некоторые выводы.
"Что мы видим, - говорит он. - С одной стороны, скорость вычислений "на одном потоке" в "Эльбрус-8C" проигрывает современным десктопным процессорам (они отмечены зеленым цветом) в два-три раза, в некоторых случаях - до четырех. Однако при сравнении с серверными процессорами (выделены синим цветом), разрыв уменьшается до полутора-двух раз, так как их частоты значительно ниже. Но в них - больше ядер и потоков. А в "Эльбрусе" - частота еще ниже - всего 1,3 ГГц, и если мы это учтем, то увидим, что производительность на такт у него как минимум не хуже, чем у лучших десктопных и серверных процессоров".
Далее автор переходит к рассмотрении валовой производительности. В квадратных скобках после модели процессора указано число потоков, опознанных BOINC-клиентом. Комментируя диаграмму, специалист поясняет, что мы здесь имеем дело не с отдельно взятыми чипами, а с системами на их основе. "В случае с десктопными процессорами (также отмечены зеленым) в системе может быть только 1 CPU, - сообщает автор. - В случае серверных систем на основе Xeon E5 - до двух CPU. А вот в случае с "Эльбрус-8С" в сервер можно поставить и четыре процессора. И это существенно уменьшает отставание в ситуации, когда у того же Xeon E5-2683 v3 на один сокет приходится 14 ядер (и 28 потоков), а у "Эльбруса" - восемь. Двусокетной машине с 28 ядрами уже сейчас можно сопоставить машину на "Эльбрусе" с 32". Отметим, что IntelXeon E5-2683 v3 был выпущен в 2014 г.
Автор полагает, что существующие модели не смогут конкурировать с десктопными системами ни по производительности ни, скорее всего, по цене - в этом нет никакой интриги. "А вот в серверном сегменте ситуация куда интереснее, - добавляет он. - Система, аналогичная серверу с двумя Xeon E5-2683 v3 будет стоить где-то $10-12 тыс., и возможно, что в отдельных секторах этого рынка "Эльбрусы" могут составить конкуренцию уже сейчас. В случае же, реализации планов по наращиванию числа ядер (16 и 32) и частот, ситуация может стать еще лучше".
Автор добавляет пояснения про параллельность внутри потока. "Если мы посмотрим на любую программу, то скорее всего увидим, что даже в "исключительно однопоточном" в силу алгоритма коде далеко не все операции (или строки кода) процессор обязан выполнять строго последовательно, - пишет он.
То есть, в рамках нашего алгоритма есть возможность распараллеливания на уровне отдельных инструкций, продолжает эксперт. Но, в тоже время, число подобных действий невелико, в пределах пяти-десяти, что, скорее всего, позволяет неплохо задействовать эти возможности в современных процессорах AMD и Intel, которые могут выполнять как раз где-то около пяти-восьми инструкций одновременно, но лишь частично задействуют возможность "Эльбрус-8C" в котором число одновременно выполняемых инструкций может достигать 25! А это значит, что в задачах с более высокой степенью "внутреннего параллелизма" соотношение может изменяться в пользу "Эльбрус-8C" до трех-пяти раз и, даже системы, существующие сейчас, в ряде задач могут выходить в лидеры и по однопоточной производительности, и по валовой производительности CPU, и по валовой производительности системы. Результат в RakeSearch, по сути - это результат в самых неподходящих условиях. И это делает данные результаты еще интереснее".