Комментарии
омощью набора компиляторов GNU версии 4.8.5

А почему версия такая несвежая?
а одноядерные тесты запускались в 32 копии.

А в чем смысл так делать?
Удастся ли AMD победить Intel на рынке x86 процессоров в ближайшие 2-3 года?

Вопрос странный, что вообще значит «победить»? Вытеснить до нуля на позиции которые ранее занимали Opteron? Нереально, но вот нарастить свою долю — наверняка, вопрос лишь насколько.
А в чем смысл так делать?

Чтобы получить преимущество процессора AMD — логично же, потому что AMD всё ещё отстаёт от Intel в плане одноядерной производительности.

Интел тестировал 80ти ядерный процессор более 12 лет назад www.ferra.ru/news/computers/intel-predstavila-80-yadernyy-processor-12-02-2007.htm
Цель Интел получение прибыли, при помощи АМД Интел избавляется от антимонопольных претензий, лучшее что светит АМД — снизить цены на процессоры Интел в конкурентной борьбе.

Ну и толку от этих 80 ядер, если они маленькие? В GPU например тоже унифицированные ядра есть (архитектура, правда, не х86), но на них не все алгоритмы можно эффективно исполнять. А тут в 7742 ядра по производительности как у конкурента, а на равных частотах мощнее будут.


Про цель Интел и монополию — при таком раскладе в чем был смысл вытеснять амд с рынка в эпоху опетронов?

12 лет назад 1 TFLOPS(я так понимаю имеется в виду FP32) от 1го х86 камня мало?
Сколько TFLOPS у представленных процов?
Сколько TFLOPS у представленных процов?
На представленный процах работают обычные операционки и обычные программы, на 80-ядерном «чуде» от Intel ни то, ни другое не работает… какая разница сколько там TFLOPS?
А почему версия такая несвежая?

Используется версия, предлагаемая пакетным менеджером CentOS 7 по умолчанию.

А в чем смысл так делать?

Это связано со спецификой работы SPEC CPU. Однопоточные тесты рекомендуется запускать по одному на каждое ядро одновременно. Более подробно можно прочитать здесь.
а одноядерные тесты запускались в 32 копии.
А в чем смысл так делать?
Смысл в том, что человеку, который покупает серверные процессоры в 16-32 ядер и гоняет на них один поток на всём процессоре нужно не бенчмарки смотреть, а в больничку за лекарствами. Для игр есть совсем другие процессоры — и да, там Intel рулит.

А на серверах важно — что вы сможете «снять» с кучки виртуальных машин или компиляторов… Ну или ещё чего угодно — но работающего в параллель.

Иначе платить за серверный CPU нет смысла.
Мне, как потребителю серверных процессоров, совсем не нужно, чтобы АМД побеждал на рынке Интел. Дай Бог, пусть конкурентный (реально!) уровень держался как можно дольше. Хорошо бы еще кто-нибудь подтянулся к этим двум лидерам. Эх, мечты…
У интела огромнейший административный и политический ресурс, даже выдавая полный мусор (вспомните Pentium 4!) они смогут держать существенную долю рынка.
На серверном рынке вообще чудо, если они захватят существенную долю.

Кстати, в статье ничего не сказали что у этого процессора 64 ядра и всего два узла NUMA, что рекорд
Интересный способ тестировать производительность. В процессор с поддержкой DDR4-3200 (зависящий от частоты этой самой памяти и в своих внутренних процессах) ставить старую память с 2666. Может, стоило добавить тест и с подходящей современной памятью?
Интересный способ тестировать производительность. В процессор с поддержкой DDR4-3200 (зависящий от частоты этой самой памяти и в своих внутренних процессах) ставить старую память с 2666. Может, стоило добавить тест и с подходящей современной памятью?

Вы упустили один важный момент: там использовалась серверная память, а не десктопная.
И DDR4-2666 ECC — это один из самых производительных вариантов.

На текущий момент 2933 доступна без особых проблем. 3200 есть на Амазоне, но от странного бренда. Но согласен, с ecc registered памятью с высокими частотами пока есть проблемы. Видимо, для AMD это запас на будущее.

Посмотрел сейчас ассортимент наших интернет-магазинов. Подавляющее большинство модулей — 2666, за ними идут 2400. Память 2933 встречается единично, 3200 вообще нет.


Для серверов нет особого смысла гнаться за пропускной способностью памяти — стабильность важнее. Также стоит отметить, что серверные процессоры AMD имеют 8 каналов доступа к памяти, в том числе и младшие модели с 16 ядрами.

Тестирование должно быть максимально объективным, тем более что речь идет о сравнении процессоров Intel® и AMD. Поэтому мы не будем использовать оптимизирующих компиляторов для сборки тестов, которые поставляются в виде исходных кодов

Совершенно непонятная логика. Если мне важна производительность процессора, то я собираю код под него. Если не важна, то я и бенчмарки не читаю.


Тесты собраны на третьем уровне оптимизаций с помощью набора компиляторов GNU версии 4.8.5

А можно 2.95, пожалуйста, чтобы он точно даже отдаленно целевую микроархитектуру не представлял?

Если мне важна производительность процессора, то я собираю код под него.
Если вам нужна пара серверов? Это тысяч двадцать от силы.

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

Если же речь идёт о каком-нибудь условном Гугле, у которого миллион серверов — так там в другом беда: они ж не сразу все обновляются! Так что тоже затачивать под конкретный процессор не получится.

То, про что вы говорите — это HPC, очень узкая ниша… и люди, там работающие уж точно не будут выбирать что-то на основании бенчмарков из интернета… скорее всё проверят сами.

Если не важна, то я и бенчмарки не читаю.
Вы упустили из виду самый распространённый вариант: производительность важна, но вы — не софтверная компания, а сервер для вас — такой же инструмент как и какая-нибудь условная роторно-строгательная машина.

А можно 2.95, пожалуйста, чтобы он точно даже отдаленно целевую микроархитектуру не представлял?
Уже не нужно. Даже Google слез с него 10 лет назад. На самом деле, может быть, даже 11 — но примерно так…

<sarcasm off>

Вы очень сильно переоцениваете желание разработчиков коммерческого софта вкладываться в борьбу с новыми компиляторами. И да — Google действительно слез с GCC 2.95 примерно лет 10 назад. Когда просто уже совсем невмоготу стало без 64-бит… помню, что переход был с GCC 2.95 на GCC 4.2

P.S. Я не говорю, что всем и всегда нужно ориентироваться на этот бенчмарк. Но он куда как ближе к нуждам реальных пользователей, чем вы думаете.
Годовая зарплата сотрудника, который будет оптимизировать код под конкретный чип — куда выше.

Я ж писал, что собираю код под него, а не пишу. Или вы год будете платить человеку за то, что он куда надо добавит -march=native?


То, про что вы говорите — это HPC, очень узкая ниша… и люди, там работающие уж точно не будут выбирать что-то на основании бенчмарков из интернета… скорее всё проверят сами.

То и правда совсем другой разговор. Там надо открывать, эээ, vtune, смотреть дизассемблер и так далее. Но об этом речи не было. Речь шла о совершенно халявном приросте производительности за счёт сборки под целевую систему.


Вы очень сильно переоцениваете желание разработчиков коммерческого софта вкладываться в борьбу с новыми компиляторами

Да вовсе нет, я знаю людей, фигачащих в прод код, собранный с -O0, так как иначе компилятор все портит. Но почему-то с такими людьми больно работать.

Я ж писал, что собираю код под него, а не пишу.
Перед тем, как вы его соберёте — вам нужно его откуда-то получить. Если у вас нет человека, который код пишет, то у вас просто нечего будет собирать. У вас будут бинарники или, возможно, даже исходники, которые непонятно как превратить в бинарники. Плюс загадочная инструкция, автор которой не факт, что по ней сможет сборку осуществить. И уж конечно вы не будете при таком раскладе рисковать и пытаться на новый сервер выкатить нечто непротестированное.

Ну не будет у вас собирающегося года, если никто регулярно не собирает! Откуда?

Или вы год будете платить человеку за то, что он куда надо добавит -march=native?
Ну вот подумайте: вам нужно будет найти какого-то фрилансера, который за это возьмётся, разберётся с той грудой… исходников, которая у вас есть (я видел проекты, где фрилансеру высылали авиапочтой «комплект SDK», который оказался парой машин, куда были установлены Linux и Windows с определённым набором софта и инструкцией куда прописывать IP адреса), потом нужно будет провести тестирование… но главное — как вы вообще поймёте, что кто-то что-то там реально подо что-то подстраивал?

В общем -march=native вставить-то несложно, а вот получить нечто, куда его можно вставлять… может оказаться дороговато…

Речь шла о совершенно халявном приросте производительности за счёт сборки под целевую систему.
Ещё раз: «сборка под целевую систему» — это вещь недоступная подавляющему большинству бизнесов. В лучшем случае они могут установить какой-нибудь специальный оптимизированный пакет под Ryzen… если его кто-то вообще сделает.

Да вовсе нет, я знаю людей, фигачащих в прод код, собранный с -O0, так как иначе компилятор все портит. Но почему-то с такими людьми больно работать.
Тем не менее это и есть те, для кого пишутся такие статьи.
НЛО прилетело и опубликовало эту надпись здесь
Удивительно, что в статье ни слова не сказано об удвоенной производительности ввода/вывода, а именно поддержке PCIe 4.0 для всех 128 линий в процессоре.
Это достаточно важный показатель, т.к., например, можно получить вдвое большую скорость обмена с компьютером для двухканальных 100GbE адаптеров от Mellanox. Или поставить однослотный SSD адаптер на 4 устройства M.2 PCIe 4.0 SSD.
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.