+55 голосов |
С августа второе поколение процессоров AMD EPYC стало центром притяжения серверных интересов. Семейство чипов под кодовым названием Rome отличается новой необычной архитектурой: вычислительные кристаллы, содержащие группы ядер, интегрированы в единый корпус с узлом обслуживания коммуникаций — I/O Hub, в обязанности которого входит также работа с оперативной памятью.
До того как объединиться на базе архитектуры Zen 2, AMD пережила размежевание DRAM-каналов в Naples — первом поколении процессоров EPYC, у которых группы процессорных ядер владели собственными контроллерами памяти. Основы такой архитектуры восходят еще к процессорам Opteron, когда AMD ступила на порог дома высокой процессорной моды. Корни NUMA — раздельного и неравноправного доступа к ОЗУ (Non-Uniform Memory Access) — оттуда.
Еще до официального представления AMD EPYC Rome Роберт Хормут (Robert Hormuth), вице-президент Dell EMC, заметил, что любые недостатки архитектуры I/O Hub «будут уменьшены за счет больших размеров L3-кэша и более чем удвоенной пропускной способности Infinity Fabric V2».
Шина межпроцессорной связи Infinity Fabric InterSocket (IFIS) в односокетных платформах не используется — соединение кристаллов мультичиповой конструкции строится на основе Infinity Fabric On-Package (IFOP) . А вот топологическая дистанция между вычислительными ядрами и контроллером памяти никуда не делась, что выводит кэш-память третьего уровня на ведущие позиции в архитектуре EPYC Rome.
Кэш, блоками по 16 МБ, обслуживает процессорный комплекс, состоящий из четырех ядер. Суммарно в одном сокете может быть от 32 МБ до 256 МБ сегрегированной L3-памяти. У различных моделей процессоров количество встроенных комплексов разное, но для понимания достаточно и сказанного.
В нашем распоряжении оказалась платформа ASUS RS500A-E10-RS12-U на материнской плате KRPA-U16 с процессором EPYC 7452. Первым делом нас интересовало, на что способен L3-кэш — как основной компенсатор возможных недостатков архитектуры Zen 2. Результаты исследований с помощью собственного программного обеспечения NUMA CPU and RAM Benchmark (NCRB) изложены в статье «Кэш-память L3 как зеркало производительности процессора AMD EPYC Rome». Коротко подведем итоги тестирования.
Латентность L3-кэш процессора AMD EPYC 7452 в однопоточном режиме
Тестирование, выполнявшееся в однопоточном режиме, показало, что зависимость латентности от размера обрабатываемого блока содержит точку перегиба, возникающую ровно на половине объема L3. Анализ, подтвержденный дальнейшими экспериментами, выявил причину неравномерности — дефицит места в TLB (Translation Lookaside Buffer). Это особый тип сверхоперативной памяти, который используется для дескрипторов страниц при трансляции виртуального адреса в физический.
Проблема исчерпания ресурсов буфера ассоциативной трансляции наблюдалась и ранее, в том числе на процессорах Intel. Один из вариантов ее решения — переход с классической 4 КБ гранулярности ОЗУ на «большие страницы», размер которых в 64-битном режиме составляет 2 МБ. Блоков будет меньше, дескрипторов для управления ими тоже — память TLB будет использоваться более рационально.
Беда в том, что вот так просто все взять и заменить не получается: на пути прогресса стоит консервативность программного обеспечения. Внедрение «больших страниц» в прикладном ПО и применение их в коде ядра операционной системы — две отдельные задачи, требующие различных подходов и разных критериев эффективности. А в прикладных программах гранулярность в 2 МБ возможна только в том случае, если разработчик кода позаботился об этом. Не факт, что сие даст общий положительный эффект, потому что «большие страницы» вообще-то воспринимаются как невыгружаемые. Это означает, что в своп-файл их складывать не получится.
Вернемся к реализации L3 в AMD Rome. Точка перегиба в однопоточном режиме на отметке 8 МБ свидетельствует о возможном падении производительности кэш-памяти, особенно при совместном доступе к ней всех четырех ядер процессорного комплекса. Оптимизм Роберта Хормута может оказаться преждевременным, хотя в любом случае объем L3 в новых процессорах AMD впечатляет, чего не скажешь об изделиях конкурента. Анализ различий в реализациях оставляет открытой общую проблему — куда двигаться процессорной индустрии дальше?
Про DCIM у забезпеченні успішної роботи ІТ-директора
+55 голосов |