Запуск компанией AMD в производство новых серверных процессоров EPYC (Naples) – безусловно, значимое событие для серверного рынка. В предшествующие годы доля старой серверной линейки AMD Opteron сократилась до малозаметной величины. Выпуск EPYC возобновляет конкуренцию в сфере платформ серверов x86, по крайней мере в одно- и двухсокетном сегментах.

 По своим характеристикам – количеству ядер, ширине канала ОЗУ и особенно канала ввода-вывода – эти решения действительно обходят старшие решения Intel для двухсокетных конфигураций текущего поколения. Правда, на выходе у Intel уже следующее поколение, и как там будет обстоять дело – это вопрос. Однако в любом случае задел AMD поставила мощный.

При этом вендор явно делает акцент на «тяжелые» односокетные решения. К параметрам AMD EPYC с 32 ядрами, поддержкой до 2 Тбайт ОЗУ и 128(!) линиями PCIe для периферии даже близко не может подобраться ни один Xeon E5, не говоря уже о ПК-процессоре Xeon E3. Вообще это решение способно сформировать некий новый подсегмент серверного рынка – односокетники с масштабируемостью, достойной двухпроцессорного сервера.

Двухсокетная система на EPYC интересна не меньше. Но вот дальше масштабировать платформу AMD EPYC, видимо, довольно затруднительно. И о многопроцессорных системах производитель даже не упоминает. Вероятно, дело тут в следующем. В приведенных выше данных о встроенной поддержке 128 линий PCIe на сокет имеется маркетинговая хитрость. Так, в материалах AMD указывается: «шина Infinity Fabric используется для соединения двух процессоров EPYC, устанавливаемых в одну систему». Звучит, как будто для межсокетного интерконнекта выделен отдельный физический канал. Но это не так.

В процессорах архитектуры Zen шина Infinity Fabric (IF) используются для связи блоков из ядер CPU внутри чипа. Например, 32 ядерный чип EPYC представляет собой четыре восьмиядерника, объединенных IF, которая обеспечивает когерентность кэш-памяти – передачу соседним блокам CPU информации о проведенных изменениях данных в ОЗУ. Но теперь стало ясно, что IF может использоваться и для связи уже между сокетами, для которой поддержка когерентности является жизненно необходимой.

Известно, что шина IF фактически совместима с PCIe 3 – на физическом уровне это одно и то же. Хитрость в том, что на самом деле выделенного канала для соединения процессоров в двухсокетной системе в платформе AMD нет. Для этого часть линий PCIe (по 64 линии от каждого процессора) отдается под межсокетный интерконнект, а вот управляет этим как раз контроллер IF, обеспечивающий когерентность памяти на этом канале.

В то же время у Intel для связи процессоров используется отдельная шина QPI. Кроме прочего, это дает платформе Xeon масштабируемость до четырех сокетов и более. А вот обеспечить то же самое в рамках решения AMD означало бы задействовать весь ресурс ввода-вывода под интерконнект.

Но, видимо, AMD и не собиралась конкурировать в старшем сегменте. Зато она предложила решение, способное заведомо обогнать по масштабируемости однопроцессорной системы все имеющиеся варианты, и систему, способную полноценно конкурировать с Intel в основном сегменте – двухсокетниках.