Хоппер (микроархитектура)

Микроархитектура графического процессора, разработанная Nvidia

Хоппер
Запущен20 сентября 2022 г. ; 2 года назад ( 2022-09-20 )
РазработаноНвидиа
Изготовлено
Процесс изготовленияTSMC N4
Серия продуктов
Сервер/центр обработки данных
Технические характеристики
Кэш L1256  КБ (на SM)
кэш L250  МБ
Поддержка памятиHBM3
поддержка PCIePCI-Express 5.0
Медиа-движок
Поддерживаемые кодировщикиНВЕНК
История
ПредшественникАмпер
ВариантАда Лавлейс (потребитель и профессионал)
ПреемникБлэквелл
4 графических процессора Nvidia H100

Hopper — это микроархитектура графического процессора (GPU) , разработанная компанией Nvidia . Она предназначена для центров обработки данных и используется вместе с микроархитектурой Lovelace . Это последнее поколение линейки продуктов, ранее известных как Nvidia Tesla , а теперь — Nvidia Data Centre GPUs.

Названная в честь компьютерного ученого и контр-адмирала ВМС США Грейс Хоппер , архитектура Hopper была обнародована в ноябре 2019 года и официально представлена ​​в марте 2022 года. Она превосходит своих предшественников, микроархитектуры Turing и Ampere , и включает в себя новый потоковый мультипроцессор , более быструю подсистему памяти и трансформаторный ускоритель.

Архитектура

Графический процессор Nvidia Hopper H100 реализован с использованием процесса TSMC N4 с 80 миллиардами транзисторов. Он состоит из 144 потоковых мультипроцессоров . [1] Благодаря увеличенной пропускной способности памяти, обеспечиваемой сокетом SXM5, Nvidia Hopper H100 обеспечивает лучшую производительность при использовании в конфигурации SXM5, чем в типичном сокете PCIe. [2]

Потоковый мультипроцессор

Потоковые мультипроцессоры для Hopper улучшают микроархитектуры Turing и Ampere , хотя максимальное количество одновременных варпов на потоковый мультипроцессор (SM) остается одинаковым для архитектур Ampere и Hopper, 64. [3] Архитектура Hopper предоставляет тензорный ускоритель памяти (TMA), который поддерживает двунаправленную асинхронную передачу памяти между общей памятью и глобальной памятью. [4] В TMA приложения могут передавать до 5D тензоров. При записи из общей памяти в глобальную память могут использоваться поэлементное сокращение и побитовые операторы, избегая регистров и инструкций SM, при этом позволяя пользователям писать специализированные коды варпов. TMA предоставляется через cuda::memcpy_async. [5]

При распараллеливании приложений разработчики могут использовать кластеры блоков потоков . Блоки потоков могут выполнять атомарные операции в общей памяти других блоков потоков в пределах своего кластера, иначе называемой распределенной общей памятью . Распределенная общая память может использоваться SM одновременно с кэшем L2 ; при использовании для передачи данных между SM это может использовать объединенную полосу пропускания распределенной общей памяти и L2. Максимальный размер переносимого кластера составляет 8, хотя Nvidia Hopper H100 может поддерживать размер кластера 16 с помощью этой cudaFuncAttributeNonPortableClusterSizeAllowedфункции, потенциально за счет уменьшения количества активных блоков. [6] С многоадресной рассылкой L2 и распределенной общей памятью требуемая полоса пропускания для чтения и записи динамической памяти с произвольным доступом уменьшается. [7]

Hopper отличается улучшенной пропускной способностью формата с плавающей точкой одинарной точности (FP32) с вдвое большим количеством операций FP32 за цикл на SM, чем у его предшественника. Кроме того, архитектура Hopper добавляет поддержку новых инструкций, включая алгоритм Смита-Уотермана . [6] Как и Ampere, поддерживается арифметика TensorFloat-32 (TF-32). Шаблон отображения для обеих архитектур идентичен. [8]

Память

Nvidia Hopper H100 поддерживает память HBM3 и HBM2e до 80 ГБ; система памяти HBM3 поддерживает 3 ТБ/с, что на 50% больше, чем 2 ТБ/с у Nvidia Ampere A100. По всей архитектуре были увеличены емкость кэша L2 и пропускная способность. [9]

Hopper позволяет вычислительным ядрам CUDA использовать автоматическое встроенное сжатие, в том числе при индивидуальном выделении памяти, что позволяет получать доступ к памяти с более высокой пропускной способностью. Эта функция не увеличивает объем памяти, доступной приложению, поскольку данные (и, следовательно, их сжимаемость ) могут быть изменены в любое время. Компрессор автоматически выберет между несколькими алгоритмами сжатия. [9]

Nvidia Hopper H100 увеличивает емкость объединенного кэша L1, текстурного кэша и общей памяти до 256 КБ. Как и его предшественники, он объединяет кэши L1 и текстур в единый кэш, разработанный как объединяющий буфер. Атрибут cudaFuncAttributePreferredSharedMemoryCarveoutможет использоваться для определения вырезания кэша L1. Hopper представляет усовершенствования NVLink посредством нового поколения с более быстрой общей пропускной способностью связи. [10]

Домены синхронизации памяти

Некоторые приложения CUDA могут испытывать помехи при выполнении операций ограждения или сброса из-за упорядочивания памяти. Поскольку графический процессор не может знать, какие записи гарантированы, а какие видны по случайному времени, он может ожидать ненужных операций памяти, тем самым замедляя операции ограждения или сброса. Например, когда ядро ​​выполняет вычисления в памяти графического процессора, а параллельное ядро ​​выполняет связь с одноранговым узлом, локальное ядро ​​будет сбрасывать свои записи, что приведет к более медленной записи NVLink или PCIe . В архитектуре Hopper графический процессор может уменьшить net cast с помощью операции ограждения. [11]

DPX-инструкции

Интерфейс прикладного программирования математики архитектуры Hopper (API) предоставляет функции в SM, такие как __viaddmin_s16x2_relu, который выполняет per- halfword . В алгоритме Смита-Уотермана может использоваться трехсторонний минимум или максимум с последующим ограничением до нуля. [12] Аналогично, Hopper ускоряет реализацию алгоритма Needleman-Wunsch . [13] м а х ( м я н ( а + б , с ) , 0 ) {\displaystyle макс(мин(a+b,c),0)} __vimax3_s16x2_relu

Двигатель-трансформатор

Архитектура Hopper была первой архитектурой Nvidia, в которой был реализован движок transformer. [14] Трансформаторный движок ускоряет вычисления, динамически уменьшая их с более высокой числовой точности (например, FP16) до более низкой точности, которая выполняется быстрее (например, FP8), когда потеря точности считается приемлемой. [14] Трансформаторный движок также способен динамически выделять биты в выбранной точности либо мантиссе, либо экспоненте во время выполнения, чтобы максимизировать точность. [5]

Эффективность использования энергии

Форм-фактор SXM5 H100 имеет тепловую расчетную мощность (TDP) 700 Вт . Что касается асинхронности, архитектура Hopper может достигать высокой степени использования и, таким образом, иметь лучшую производительность на ватт. [15]

Грейс Хоппер

Грейс Хоппер GH200
РазработаноНвидиа
Изготовлено
Процесс изготовленияTSMC 4N
Кодовое имя(я)Грейс Хоппер
Технические характеристики
ВычислитьГрафический процессор: 132 процессора Hopper SM.
ЦП: 72 ядра Neoverse V2.
Тактовая частота шейдера1980 МГц
Поддержка памятиГрафический процессор: 96 ГБ HBM3 или 144 ГБ HBM3e
Центральный процессор: 480 ГБ LPDDR5X

GH200 объединяет графический процессор H100 на базе Hopper с 72-ядерным центральным процессором на базе Grace в одном модуле. Общая потребляемая мощность модуля составляет до 1000 Вт. Центральный процессор и графический процессор соединены через NVLink, что обеспечивает согласованность памяти между центральным процессором и графическим процессором. [16]

История

В ноябре 2019 года известный аккаунт Twitter опубликовал твит, в котором говорилось, что следующая архитектура после Ampere будет называться Hopper, в честь компьютерного учёного и контр-адмирала ВМС США Грейс Хоппер , одного из первых программистов Harvard Mark I. В аккаунте говорилось, что Hopper будет основан на многочиповой модульной конструкции, что приведёт к повышению производительности при меньших потерях. [17]

Во время Nvidia GTC 2022 года Nvidia официально анонсировала Hopper. [18] К 2023 году, во время бума ИИ , H100 пользовались большим спросом. Ларри Эллисон из Oracle Corporation сказал в том году, что на ужине с генеральным директором Nvidia Дженсеном Хуангом он и Илон Маск из Tesla, Inc. и xAI «умоляли» о H100, «Я думаю, это лучший способ описать это. Час суши и умоляния». [19]

В январе 2024 года аналитики Raymond James Financial подсчитали, что Nvidia продавала графические процессоры H100 по цене от 25 000 до 30 000 долларов за штуку, в то время как на eBay отдельные H100 стоили более 40 000 долларов. [20] По сообщениям, по состоянию на февраль 2024 года Nvidia поставляла графические процессоры H100 в центры обработки данных в бронированных автомобилях. [21]

Ускоритель H100 и DGX H100

Сравнение ускорителей, используемых в DGX: [22] [23] [24]

МодельАрхитектураГнездоЯдра FP32
CUDA
Ядра FP64
(без тензора)
Смешанные ядра
INT32/FP32

Ядра INT32
Увеличить
тактовую частоту

Часы памяти

Ширина шины памяти

Пропускная способность памяти
ВидеопамятьОдинарная
точность
(FP32)
Двойная
точность
(FP64)
INT8
(не тензорный)
INT8
плотный тензор
INT32
Плотный тензор FP4
FP16
Плотный тензор FP16
bfloat16
плотный тензор
TensorFloat-32
(TF32)
плотный тензор

Плотный тензор FP64
Межсоединение
(NVLink)
ГПУКэш L1Кэш L2ТДПРазмер матрицы
Количество транзисторов
ПроцессЗапущен
100р.ПаскальСХМ/СХМ2Н/Д17923584Н/Д1480 МГц1,4 Гбит/с HBM24096-бит720 ГБ/сек16 ГБ HBM210,6 терафлопс5.3 ТФЛОПСН/ДН/ДН/ДН/Д21,2 терафлопсН/ДН/ДН/ДН/Д160 ГБ/секГП1001344 КБ (24 КБ × 56)4096 КБ300 Вт610 мм 215.3 БTSMC 16FF+2 квартал 2016 г.
V100 16 ГБВольтаСХМ251202560Н/Д51201530 МГц1,75 Гбит/с HBM24096-бит900 ГБ/сек16 ГБ HBM215,7 терафлопс7,8 терафлопс62 ТОПН/Д15.7 ТОПОВН/Д31,4 терафлопс125 терафлопсН/ДН/ДН/Д300 ГБ/секГВ10010240 КБ (128 КБ × 80)6144 КБ300 Вт815 мм 221.1 БTSMC 12FFN3 квартал 2017 г.
V100 32 ГБВольтаSXM351202560Н/Д51201530 МГц1,75 Гбит/с HBM24096-бит900 ГБ/сек32 ГБ HBM215,7 терафлопс7,8 терафлопс62 ТОПН/Д15.7 ТОПОВН/Д31,4 терафлопс125 терафлопсН/ДН/ДН/Д300 ГБ/секГВ10010240 КБ (128 КБ × 80)6144 КБ350 Вт815 мм 221.1 БTSMC 12FFN
А100 40ГБАмперSXM4691234566912Н/Д1410 МГц2,4 Гбит/с HBM25120-бит1,52 ТБ/сек40 ГБ HBM219,5 терафлопс9,7 терафлопсН/Д624 ТОП19.5 ТОПОВН/Д78 терафлопс312 ТФЛОПС312 ТФЛОПС156 терафлопс19,5 терафлопс600 ГБ/секGA10020736 КБ (192 КБ × 108)40960 КБ400 Вт826 мм 254,2 БTSMC N71 квартал 2020 г.
А100 80ГБАмперSXM4691234566912Н/Д1410 МГц3,2 Гбит/с HBM2e5120-бит1,52 ТБ/сек80 ГБ HBM2e19,5 терафлопс9,7 терафлопсН/Д624 ТОП19.5 ТОПОВН/Д78 терафлопс312 ТФЛОПС312 ТФЛОПС156 терафлопс19,5 терафлопс600 ГБ/секGA10020736 КБ (192 КБ × 108)40960 КБ400 Вт826 мм 254,2 БTSMC N7
H100ХопперSXM516896460816896Н/Д1980 МГц5,2 Гбит/с HBM35120-бит3,35 ТБ/сек80 ГБ HBM367 терафлопс34 терафлопсН/Д1,98 ПОПСН/ДН/ДН/Д990 терафлопс990 терафлопс495 терафлопс67 терафлопс900 ГБ/секGH10025344 КБ (192 КБ × 132)51200 КБ700 Вт814 мм 280 БTSMC 4N3 квартал 2022 г.
H200ХопперSXM516896460816896Н/Д1980 МГц6,3 Гбит/с HBM3e6144-бит4,8 ТБ/сек141 ГБ HBM3e67 терафлопс34 терафлопсН/Д1,98 ПОПСН/ДН/ДН/Д990 терафлопс990 терафлопс495 терафлопс67 терафлопс900 ГБ/секGH10025344 КБ (192 КБ × 132)51200 КБ1000 Вт814 мм 280 БTSMC 4N3 квартал 2023 г.
Б100БлэквеллSXM6Н/ДН/ДН/ДН/ДН/Д8 Гбит/с HBM3e8192-бит8 ТБ/сек192 ГБ HBM3eН/ДН/ДН/Д3.5 ПОПСН/Д7 ПФЛОПСН/Д1,98 ПФЛОПС1,98 ПФЛОПС989 ТФЛОПС30 терафлопс1,8 ТБ/секГБ100Н/ДН/Д700 ВтН/Д208 БTSMC 4NP4 квартал 2024 г. (ожидается)
Б200БлэквеллSXM6Н/ДН/ДН/ДН/ДН/Д8 Гбит/с HBM3e8192-бит8 ТБ/сек192 ГБ HBM3eН/ДН/ДН/Д4.5 ПОПСН/Д9 ПФЛОПСН/Д2,25 ПФЛОПС2,25 ПФЛОПС1,2 ПФЛОПС40 терафлопс1,8 ТБ/секГБ100Н/ДН/Д1000 ВтН/Д208 БTSMC 4NP

Ссылки

Цитаты

  1. ^ Эльстер и Хаугдал, 2022, с. 4.
  2. ^ Nvidia 2023c, стр. 20.
  3. ^ Nvidia 2023b, стр. 9.
  4. ^ Фудзита и др. 2023, стр. 6.
  5. ^ ab "Nvidia's Next GPU Shows That Transformers Are Transforming AI - IEEE Spectrum". spectrum.ieee.org . Получено 23 октября 2024 г. .
  6. ^ ab Nvidia 2023b, стр. 10.
  7. ^ Вишал Мехта (сентябрь 2022 г.). Модель программирования CUDA для архитектуры Hopper. Санта-Клара: Nvidia . Получено 29 мая 2023 г.
  8. ^ Фудзита и др. 2023, стр. 4.
  9. ^ ab Nvidia 2023b, стр. 11.
  10. ^ Nvidia 2023b, стр. 12.
  11. ^ Nvidia 2023a, стр. 44.
  12. ^ Тирумала, Аджай; Итон, Джо; Тирлик, Мэтт (8 декабря 2022 г.). «Повышение производительности динамического программирования с использованием инструкций NVIDIA Hopper GPU DPX». Nvidia . Получено 29 мая 2023 г. .
  13. ^ Харрис, Дион (22 марта 2022 г.). «Архитектура графического процессора NVIDIA Hopper ускоряет динамическое программирование до 40 раз с помощью новых инструкций DPX». Nvidia . Получено 29 мая 2023 г. .
  14. ^ ab Salvator, Dave (22 марта 2022 г.). «H100 Transformer Engine ускоряет обучение ИИ, обеспечивая до 6 раз более высокую производительность без потери точности». Nvidia . Получено 29 мая 2023 г. .
  15. ^ Эльстер и Хаугдал, 2022, с. 8.
  16. ^ "NVIDIA: Grace Hopper вышла на полную мощность и анонсировала суперкомпьютер DGX GH200 AI". Anandtech . 29 мая 2023 г.
  17. ^ Пирзада, Усман (16 ноября 2019 г.). «Утечка графического процессора NVIDIA Next Generation Hopper – основанного на дизайне MCM, запуск после Ampere». Wccftech . Получено 29 мая 2023 г.
  18. ^ Винсент, Джеймс (22 марта 2022 г.). «Nvidia представляет графический процессор H100 для искусственного интеллекта и дразнит „самым быстрым в мире суперкомпьютером искусственного интеллекта“». The Verge . Получено 29 мая 2023 г. .
  19. ^ Fitch, Asa (26 февраля 2024 г.). «Потрясающий взлет Nvidia также сделал ее гигантской целью». The Wall Street Journal . Получено 27 февраля 2024 г.
  20. ^ Вэниан, Джонатан (18 января 2024 г.). «Марк Цукерберг указывает, что Meta тратит миллиарды долларов на чипы Nvidia AI». CNBC . Получено 6 июня 2024 г.
  21. ^ Бускетт, Изабель; Лин, Бель (14 февраля 2024 г.). «Бронеавтомобили и ценники на триллионы долларов: как некоторые лидеры технологий хотят решить проблему нехватки чипов» . The Wall Street Journal . Получено 30 мая 2024 г.
  22. ^ Смит, Райан (22 марта 2022 г.). «Анонсирована архитектура графического процессора NVIDIA Hopper и ускоритель H100: работа умнее и сложнее». AnandTech.
  23. ^ Смит, Райан (14 мая 2020 г.). «NVIDIA Ampere Unleashed: NVIDIA анонсирует новую архитектуру графического процессора, графический процессор A100 и ускоритель». AnandTech.
  24. ^ "Протестирована NVIDIA Tesla V100: почти невероятная мощность графического процессора". TweakTown . 17 сентября 2017 г.

Цитируемые работы

  • Elster, Anne; Haugdahl, Tor (март 2022 г.). «Nvidia Hopper GPU и Grace CPU Highlights». Computing in Science & Engineering . 24 (2): 95– 100. Bibcode : 2022CSE....24b..95E. doi : 10.1109/MCSE.2022.3163817. hdl : 11250/3051840 . S2CID  249474974. Получено 29 мая 2023 г.
  • Фудзита, Кохей; Ямагучи, Такума; Кикучи, Юма; Ичимура, Цуёси; Хори, Мунео; Маддегедара, Лалит (апрель 2023 г.). «Расчет функции взаимной корреляции, ускоренный операциями TensorFloat-32 Tensor Core на графических процессорах NVIDIA Ampere и Hopper». Журнал вычислительной науки . 68 . дои : 10.1016/j.jocs.2023.101986 .
  • Руководство по программированию CUDA C++ (PDF) . Nvidia . 17 апреля 2023 г.
  • Руководство по настройке Hopper (PDF) . Nvidia . 13 апреля 2023 г.
  • Архитектура графического процессора NVIDIA H100 Tensor Core (PDF) . Nvidia . 2022.[ постоянная мертвая ссылка ‍ ]

Дальнейшее чтение

  • Choquette, Jack (май 2023 г.). «NVIDIA Hopper H100 GPU: масштабирование производительности». IEEE Micro . 43 (3): 9– 17. doi :10.1109/MM.2023.3256796. S2CID  257544490. Получено 29 мая 2023 г.
  • Мур, Сэмюэл (8 апреля 2022 г.). «Nvidia's Next GPU Shows That Transformers Are Transforming AI» (Следующий графический процессор от Nvidia показывает, что трансформеры преобразуют искусственный интеллект). IEEE Spectrum . Получено 29 мая 2023 г.
  • Морган, Тимоти (31 марта 2022 г.). «Глубокое погружение в архитектуру графического процессора «Hopper» от Nvidia». Следующая платформа . Получено 29 мая 2023 г.
Взято с "https://en.wikipedia.org/w/index.php?title=Hopper_(микроархитектура)&oldid=1268018404"