`

СПЕЦІАЛЬНІ
ПАРТНЕРИ
ПРОЕКТУ

Чи використовує ваша компанія ChatGPT в роботі?

BEST CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

Современные серверные процессоры Intel и AMD: тест популярных моделей

Статья опубликована в №25 (642) от 1 июля

+11
голос

Поскольку ситуация с серверными процессорами на отечественном рынке стабилизировалась и пользователи получили возможность приобретать конфигурации на платформах x86 (x64), оснащенные CPU как от Intel, так и от AMD, мы решили провести небольшое исследование производительности самых востребованных из них на сегодняшний день.

Современные серверные процессоры Intel и AMD тест популярных моделей
Cравнение кристаллов Barсelona (вверху) и следующего поколения Shanghai (К10.5)

Сразу хотим предупредить, что целью этого тестирования не является попытка определить лидера среди рассмотренных моделей: оценка возможностей современных процессоров при помощи исключительно измерения их вычислительной способности посредством решения специализированных математических задач – всего лишь исследование одного из блоков CPU.

Также на оценку применимости CPU влияет множество других факторов, которые не менее (а зачастую – и более) важны, чем умение быстро считать: в их числе энергоэффективность, распараллеливание процессов внутри ядер, обработка очереди команд и т. д. Именно поэтому даже самый лучший результат в наших тестах нельзя назвать «эталонным» – окончательный выбор CPU следует осуществлять только под конкретную задачу, предварительно проводя ряд собственных тестов на полигонах, которые предоставляют специалисты практически любого интегратора или поставщика решений.

Отметим, что приводимые нами результаты справедливы для применения сервера, например, в составе HPC-кластера, ориентированного на решение научных задач, связанных с математическим моделированием. В таком случае практически полностью исключается влияние дисковой подсистемы, но критичны объем и быстродействие оперативной памяти. Именно по этой причине в наших тестовых стендах использовалось большое количество ОЗУ – 16 ГБ, что в реальных системах данного класса (двухпроцессорные, на базе CPU средней ценовой категории) встречается предельно редко: как правило, объем ограничивается 2–4 ГБ.

Выбор типа процессоров определялся двумя факторами – их востребованностью у заказчиков и доступностью на рынке. Так, в линейке Intel распределение в общем количестве продаж примерно следующее: 5405 – 25% , 5410 – 15% , 5420 – 55%, 5430 (5440) – 2%, 5450 – 3%. Среди процессоров AMD самой популярной (и доступной) оказалась модель 2356. Очевидно, что при таком соотношении мы избрали для исследований именно эти CPU – 5420 (Intel) и 2356 (AMD).

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

Прежде чем перейти непосредственно к результатам тестов, коротко расскажем о процессоре AMD, поскольку о линейке Intel говорилось немало, а семейство Opteron с ядром Barcelona по ряду причин практически не освещалось.

Напомним, что вскоре после появления первых партий этих процессоров выяснилось, что изделия со степпингом В2 и ВА содержат ошибку в реализации буфера быстрого преобразования адреса (Translation Lookaside Buffer, TLB) кэш-памяти третьего уровня. В отдельных ситуациях это могло приводить к зависанию системы, и в итоге AMD была вынуждена прекратить поставки Opteron Barcelona на несколько месяцев. На сегодняшний день уже доступна обновленная версия Opteron, где проблема устранена. Как известно, одними из первых серверы на их основе выпустили на рынок компании Hewlett-Packard и Dell.

Особенности архитектуры К10

Сразу же отметим, что мы не планируем полностью излагать идеологию и архитектуру этого релиза – желающие могут получить детальную информацию на сайте AMD или у технических специалистов. Ограничимся напоминанием, что основными отличиями процессоров поколения K10 от своих предшественников на базе K8 являются объединение четырех ядер на одном кристалле, обновления протокола Hyper-Transport до версии 3.0, общий для всех ядер кэш L3, и перспективная поддержка контроллером памяти DDR3. Сами ядра также были модернизированы по сравнению с K8.

Но некоторые особенности новинки все же опишем подробнее. Итак, в новом CPU улучшена работа с инструкциями SSE (Streaming SIMD Extensions, потоковое SIMD-расширение процессора), увеличена разрядность SSE-блоков с 64 до 128 бит. Существенный момент, ведь ранее чипы K8 при выполнении 128-битовой SSE-операции вынужденно разделяли ее на две 64-битовые и обрабатывали по очереди, причем дробление тоже являлось операцией. Это было безусловным слабым местом архитектуры: при таком подходе одна 128-битовая SSE-инструкция требовала минимум трех операций, в то время как K10 может выполнять 64-битовые SSE-инструкции как одну.

Кроме того, увеличена разрядность интерфейса между SSE-блоками и кэшем данных первого уровня. Теперь за один такт стала возможной загрузка двух 128-битовых инструкций за такт против двух 64-битовых у K8. Связь между кэшем L2 и контроллером памяти также составляет 128 бит.

В новом ядре поддерживаются инструкции SSE4a, которые, помимо стандартного набора, включают комбинированный набор инструкций (EXTRQ/INSERTQ) и векторные потоковые инструкции (MOVNTSD/MOVNTSS).

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

Также вдвое (по сравнению с K8) увеличен размер стека возврата. Ранее при выполнении длинной цепочки запросов была обнаружена ситуация, при которой возникала нехватка места для записи начального адреса в стеке возврата, что приводило к невозможности дальнейшего предсказания ветвлений. Вероятность этого есть и в К10, но она значительно снизилась.

Еще один шаг к повышению производительности – внеочередная загрузка команд. В процессорах архитектуры K8 (аналогичная ситуация наблюдалась у Intel NetBurst, известных как Pentium 4) выгрузка обработанных данных происходила только после получения новых, что негативно сказывалось на общей производительности, за счет простоя части исполнительных блоков. Архитектура K10 предполагает возможность загружать новые данные до выгрузки обработанных. Подобное отличие существует и между архитектурами NetBurst и Core, но реализация данной технологии у AMD и Intel разная. Если последняя использует предсказатель, предотвращающий опережение загрузки данных над их выгрузкой из одной и той же ячейки памяти, то CPU AMD адрес выгрузки рассчитывают, что делает ошибку невозможной. Очевидно, что в случае возникновения подобной ошибки данные будут потеряны, а выполнение команды придется повторять.

Работа с ОЗУ – не исключение из общего списка нововведений. Как известно, контроллер памяти K8 был способен производить одновременно только чтение или только запись, а переключение с одной операции на другую вызывало нежелательные задержки. Этот узел в процессорах новой архитектуры также выполняет одновременно один тип операций, но оснащен специальным буфером. В него предварительно заносятся команды на запись, которые начнут выполняться после заполнения буфера до определенного уровня. Такое решение должно снизить задержки при работе с памятью. Кроме того, процессоры K8 имеют один 128-битовый контроллер памяти, в то время как чипы K10 обзаведутся двумя 64-разрядными, а адресация памяти 48-битовая, что позволяет подключить ОЗУ до 256 ТБ.

Изменения коснулись и блоков предвыборки. Подобно предшественнику, K10 имеют по два таких блока на ядро (для данных и для инструкций), но сами блоки улучшены. Главное нововведение – теперь блоки предвыборки могут записывать информацию непосредственно в кэш L1, а не в L2, что положительно сказывается на быстродействии. Появился в K10 и новый блок предвыборки DRAM, расположенный непосредственно в контроллере памяти. Он анализирует запросы к памяти, предсказывает, какие данные понадобятся процессору, и извлекает их в собственный буфер, не занимая объем кэша. Само предсказание инструкций стало 32-байтовым против 16-байтового в K8.

Не стоит упускать из виду, что новые процессоры оснащены кэш-памятью третьего уровня объемом 2 МБ. При этом L3 будет общим, т. е. обращаться к нему смогут все ядра процессора. Объем L2 прежний – 512 КБ на каждое ядро. Схема их работы такова: данные, востребуемые наиболее часто, располагаются в кэше L1, те, что туда не входят, – в L2 и наконец, наименее используемые помещаются в L3.

Пожалуй, одно из особенно отмечаемых специалистами AMD новшеств – изменение архитектуры подсистемы питания, содержащее ряд ноу-хау: CoolCore, Independent Dynamic Core и Dual Dynamic Power Management (DDPM). Так, CoolCore отключает неиспользуемые цепи процессора, чем и достигается экономия энергии.

Independent Dynamic Core (улучшенная PowerNow!) предполагает, что каждое ядро процессора может динамически изменять собственную частоту, предусмотрено пять энергетических уровней. Dual Dynamic Power Management (DDPM) обеспечивает питание контроллера памяти независимо от питания ядер, что позволит контроллеру работать с ОЗУ в обычном режиме, даже если одно или более ядер снизили свою частоту. Это востребовано, когда процессор работает с однопотоковым, не оптимизированным под несколько ядер приложением. В таком случае под нагрузкой будет только одно ядро, другие же понизят частоту до минимума. Несмотря на это, контроллер памяти будет продолжать работать на максимальной частоте, за счет чего скорость обмена данными с ОЗУ останется прежней, и падения производительности не произойдет.

Начиная с серверных процессоров Barcelona, компания AMD вводит новый стандарт для определения энергопотребления процессоров – ACP (Average CPU Power). К примеру, если TDP при пиковой нагрузке равна 95 Вт, то ACP чипа при решении типовых задач вряд ли превысит 70 Вт. Составляется эта калькуляция по количеству потребляемой мощности ядрами, контроллером памяти и линиями HyperTransport. Однако вендор не собирается отказываться от TDP, но вместе с тем он намерен активно продвигать ACP, опираясь на целый ряд его преимуществ.

И, наконец, в К10 реализована более быстрая шина HyperTransport 3.0 и поддержка сопроцессоров. Частота новой шины теперь зависит от тактовой частоты чипов и на самых высокочастотных процессорах может достигать 2,6 ГГц (20,8 ГБ/c, что соответствует 2,6 ГГц × (32 бит:8) в одном направлении). Это особенно важно для двух- и четырехъядерных CPU, так как позволяет обеспечивать высокую скорость обмена данными между ядрами. Другая особенность HT 3.0 – поддержка горячего подключения устройств и возможность конфигурирования канала. Например, шину 1×16 HT можно виртуально превратить в 2×8 HT, в итоге каждому ядру многоядерного процессора назначается персональный HT-канал. В многопроцессорных системах CPU будут связываться друг с другом и с HTX-сопроцессорами посредством именно HT 3.0.

Конфигурация стенда и тестирование

Современные серверные процессоры Intel и AMD тест популярных моделей
Современные серверные процессоры Intel и AMD тест популярных моделей

Тестирование системы осуществлялось в аппаратной конфигурации на платформах Supermicro (Superserver 6025B-3RB, чипсет Intel 5000P и A+ Server AS-2021M-T2R+B, чипсет MCP55 Pro), применялась память Kingston DDR2 (для AMD) и FB-DIMM (для Intel), работающая на частоте 667 МГц, объемом 16 ГБ. Программное обеспечение включало последние релизы ОС CentOS x86-64 и Mellanox IB GOLD Version 1.8.3. Быстродействие оценивалось посредством пакета LINPACK Benchmark со специализированными библиотеками для процессоров Intel и AMD (MKL и ACML соответственно).

Измерения выполнялись в несколько итераций, с различными параметрами конфигурационного файла, с целью добиться максимального показателя производительности. Весьма высокая повторяемость результатов тестов позволила отказаться от традиционного среднего арифметического значения, полученного на основе ряда прогонов – разница в показаниях вполне укладывается в рамки статистической погрешности, которой можно пренебречь.

Вместо подведения итогов

Для того чтобы сделать полученные результаты нагляднее, помимо «наиболее популярных», мы намеренно включили в диаграммы и процессоры старших моделей. Очевидно, что заметная динамика прироста быстродействия сохраняется у изделий обоих вендоров, правда, она ощутимо нивелируется стоимостью «топовых» изделий: целесообразно ли приобретать самые высокопроизводительные CPU, можно решить, ориентируясь исключительно на поставленную задачу. А пока же большинство пользователей отдают предпочтение средней категории, которая, при весьма демократичной цене, показывает довольно высокие результаты.

Платформы для тестирования предоставлены компанией Onix

Ready, set, buy! Посібник для початківців - як придбати Copilot для Microsoft 365

+11
голос

Напечатать Отправить другу

Читайте также

 

Ukraine

 

  •  Home  •  Ринок  •  IТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Мережі  •  Безпека  •  Наука  •  IoT