Страница 2: Архитектура Threadripper

Процессоры Ryzen нам уже хорошо известны, как и серверные модели Epyc. Поэтому если вам интересны подробности архитектуры Zen, мы рекомендуем обратиться к обзору Ryzen 7 1800X, где мы ее детально рассмотрели. Здесь же мы уделим основное внимание структуре Ryzen Threadripper.

AMD перенесла большую часть функций и улучшений архитектуры Zen, знакомых нам по Ryzen, на процессоры Ryzen Threadripper. Впрочем, ничего удивительного здесь нет. Но в деталях произошли некоторые изменения, в том числе они касаются XFR (extended frequency range), то есть автоматического разгона ядер CPU при условии достаточного охлаждения. Вместо одного-двух ядер ранее в режиме XFR процессоры Ryzen Threadripper могут разгонять до четырех ядер.

Настало время перейти к существенным отличиям. Интересно, что AMD для Ryzen Threadripper отбирает лучшие 5% кристаллов. Сначала ходили слухи о том, что AMD будет просто продавать серверные процессоры Epyc под брендом Threadripper. Но это не так, поскольку неактивные кристаллы заменены кремниевыми прокладками. Также и кристаллы Zeppelin используются другие, вернее, с другим степпингом.

Процессоры Epyc опираются на более свежий степпинг B2, но для процессоров Ryzen Threadripper используется степпинг B1. По крайней мере, об этом можно видеть в списке поддержки CPU, опубликованном некоторыми производителями материнских плат.

Обновленные степпинги обычно содержат различные улучшения, сохраняя при этом прежнюю архитектуру и тип процессора. В новых степпингах могут быть исправлены ошибки, а также возможна работа на более высоких тактовых частотах. Какие изменения AMD внесла при переходе со степпинга B1 на B2, неизвестно. Но все процессоры Ryzen используют кристаллы со степпингом B1, как и CPU Threadripper.

Межсоединения очень важны

Конечно, AMD использовала Infinity Fabric для связи между кластерами, отдельными ядрами и другими блоками, например, тем же контроллером DDR. Межсоединения Infinity Fabric работают на той же частоте, что и память. То есть использование более быстрой памяти ускоряет и интерконнект.

AMD позволяет ускорять соединение Infinity Fabric с 42,6 Гбайт/с до 51,1 Гбайт/с через увеличение частоты памяти. В результате между кристаллами мы получаем пропускную способность 102,22 Гбайт/с, поскольку используются два соединения. Между двумя комплексами CCX пропускная способность составляет 22 Гбайт/с. Важным параметром здесь является энергопотребление интерфейса, которое рассчитывается на бит. AMD указывает 2 пДж или 0,66672 Вт на канал, то есть 0,333 Вт на кристалл Zeppelin с каждой стороны канала.

Кроме пропускной способности и энергопотребление следует учитывать и задержки. Внутри CPU Complex задержки составляют 26 нс. Если происходит обмен данными между ядрами в блоке CPU Complex, задержки увеличиваются до 42 нс. В случае обмена данными между двумя CPU Complex задержки составляют уже 142 нс.

Данные задержки весьма важны при работе с памятью. Если данные обрабатываются на кристалле A, но требуется доступ к памяти, подключенной через контроллер кристалла B, то задержки будут выше, чем если бы кристалл A обращался к памяти, подключенной к собственному контроллеру. AMD указывает, что в случае напрямую подключенной памяти задержки составляют 78 нс, а при обращении к памяти другого контроллера – 133 нс.

NUMA против UMA

С новыми процессорами следует разобраться в архитектурах NUMA и UMA. Архитектура NUMA (non-uniform memory access) предусматривает собственную локальную память у каждого процессора, но благодаря общему адресному пространству каждый CPU может обращаться к памяти другого процессора. Архитектура Uniform Memory Access (UMA) предусматривает единый массив памяти, к которому могут обращаться все процессоры.

Оба подхода имеют свои преимущества и недостатки. Здесь следует обращать внимание на два параметра: меньшие задержки или более высокая пропускная способность. AMD привела собственные значения для чтения, записи или копирования данных. В наших тестах мы посмотрим, какие приложения выигрывают от NUMA или UMA. Режим работы процессора с памятью можно менять в BIOS.

Без "подводных камней"

Все процессоры Ryzen Threadripper оснащаются 64 линиями PCI Express, 4-канальным интерфейсом памяти и одинаковой конфигурацией ввода/вывода. Интересно, что независимо от количества кристаллов Zeppelin, конфигурации CCX и, соответственно, модели процессора, конфигурация ввода/вывода остается одинаковой. Здесь можно вспомнить недавний опыт Intel с процессорами Skylake-X: Intel отключила часть линий PCIe у "младших" моделей, что могло привести не только к проблемам с подключением видеокарт, но и к ограничению встроенных функций материнских плат.

Значительное количество линий PCI Express дает ряд преимуществ по сравнению с конкурентами. например, можно устанавливать больше слотов x16 для видеокарт или GPU-ускорителей, не говоря уже о слотах M.2. На большинстве материнских плат X399 установлены четыре слота GPU, как и несколько слотов M.2 NVMe. Набор встроенных компонентов тоже довольно обширный.

Режимы: Game Mode против Creator Mode

Большое число ядер и потоков хороши не для всех приложений. Вряд ли можно найти игры, которые выигрывают от числа ядер больше десяти. А некоторые старые игры вообще могут не запуститься. Поэтому AMD предложила два режима для решения потенциальных проблем. В игровом режиме Game Mode число ядер ограничено половиной. В случае Ryzen Threadripper 1950X мы получаем восемь ядер, у процессора Ryzen Threadripper 1920X – шесть. Проблемы с запуском старых приложений при таком количестве ядер вряд ли возникнут.

Если же вам нужны все ядра, то процессор стоит оставить в режиме Creator Mode, вы получите полное количество ядер и потоков. Переключаться между режимами Game и Creator можно в утилите Ryzen Master. Как и в случае переключения между режимами UMA и NUMA, потребуется перезапуск системы. Если верить AMD, более 100 игр работают в Game Mode быстрее, в среднем на четыре процента. Но есть игры, которые выигрывают вплоть до 12%. Но есть и игры, работающие медленнее. Так что здесь все зависит от того, как поведут себя ваши любимые игры.