Страница 3: На 50 процентов более высокая пропускная способность благодаря GDDR6

Современные GPU упираются не только в вычислительную производительность, но и в пропускную способность памяти. Как раз High Bandwidth Memory была разработана, чтобы решить данную проблему. Но с ней возникли сложности с доступностью, ценой и технической реализацией, что не позволило достичь поставленных целей. Первой видеокартой с поддержкой HBM стала Radeon R9 Fury X от AMD. Но даже сегодня у памяти HBM остаются проблемы с емкостью, ценой и доступностью.

С видеокартами Radeon RX Vega 64 и Vega 56 AMD попыталась вывести данную технологию на массовый рынок, но себестоимость памяти и подложки с GPU и чипами памяти сказались на скромном успехе данного GPU от AMD. NVIDIA смогла более эффективно подойти к дизайну своих видеокарт, вместе с Micron компания разработала память GDDR5X для GeForce GTX 1080 Ti, которая была несколько быстрее GDDR5. NVIDIA так и не стала переходить на HBM в случае игровых видеокарт, ограничившись ускорителями Tesla и дорогими моделями для рабочих станций в линейке Quadro.

В некоторых решениях память HBM2 смогла заработать на частоте 1.000 МГц, как планировалось изначально, но в случае видеокарт успехи скромнее. Пропускная способность приблизилась к 900 Гбайт/с, но не достигла обещанного 1 Тбайт/с. В данном случае подразумевается ширина интерфейса памяти 4.096 бит, что на практике получить весьма сложно. Игровые видеокарты на архитектуре AMD Vega опираются лишь на ширину 2.048 бит, поэтому пропускная способность составляет всего 484 Гбайт/с.

С памятью GDDR6 NVIDIA приблизилась к уровню пропускной способности, который ранее был возможен только для HBM. На данный момент Samsung остается эксклюзивным партнером NVIDIA, корейский производитель выпускает память GDDR6 с пропускной способностью 14 Гбит/с на контакт. В случае 352-битного интерфейса памяти GeForce RTX 2080 Ti мы получаем пропускную способность 616 Гбайт/с, в случае GeForce RTX 2080 и 256-битного интерфейса - 448 Гбайт/с.

Для лучшего понимания мы свели современные технологии памяти в таблицу.

Обзор технологий памяти
  GDDR6 GDDR5X GDDR5 HBM2
Пропускная способность на контакт 14 Гбит/с 11 Гбит/с 4 Гбит/с 1,7 Гбит/с
Емкость чипа 1 GB 1 GB 512 MB 4 GB
Пропускная способность на стек/чип 56 Гбайт/с 44 Гбайт/с 28 Гбайт/с 217,6 Гбайт/с
Напряжение 1,35 В 1,35 В 1,5 В 1,2 В
Ширина шины памяти 352 бит 352 бит 384 бит 4.096 бит
Пропускная способность памяти 616 Гбайт/с 484 Гбайт/с 336,6 Гбайт/с 900 Гбайт/с

Чтобы лучше пояснить особенности технологий памяти, мы привели практические реализации GDDR6, GDDR5X, GDDR5 и HBM2 в паре с GPU. Хорошо видно, что у HBM2 имеются преимущества по пропускной способности памяти, но интерфейс очень широкий и дорогой в реализации. Вместе с тем у GDDR6 пропускная способность подходит к уровню HBM2 без чрезмерно дорогой себестоимости.

Нынешняя память GDDR6 - лишь первый шаг. Производители, в том числе Micron, SK Hynix и Samsung, планируют представить чипы с более высоким уровнем емкости и пропускной способности. В будущем можно рассчитывать до 20 Гбит/с на контакт. Что увеличит пропускную способность до почти 900 Гбайт/с при 352-битном интерфейсе.

При разработке скоростной памяти приходится решать проблему передачи сигналов на высоких тактовых частотах. Здесь неизбежно возникают перекрестные помехи. На иллюстрации как раз показан такой сигнал. При тактовой частоте 1.750 МГц изменения сигнала происходят каждые 70 пс. Для правильного декодирования сигнала участок по центру должен быть как можно более чистым. Иначе сигнал будет передан с ошибкой.

При разработке GDDR6 NVIDIA и Samsung удалось добиться очень чистого сигнала на частоте 1.750 МГц.

Технология сжатия памяти

Не менее важны и технологии сжатия памяти. AMD и NVIDIA в последних поколениях GPU опираются на цветовую дельта-компрессию (Delta Color Compression). NVIDIA сейчас поддерживает уже пятое поколение технологии. AMD начала использовать его с GPU Tonga на видеокартах R9 295. Важно понимать, что данный метод сжатия работает без потерь. Таким образом, цветовая информация не теряется, каких-либо дополнительных усилий со стороны разработчиков не требуется.

NVIDIA использовала для сжатия памяти цветовую дельта-компрессию (Delta Color Compression). Она основана на хранении полной цветовой информации только о базовом пикселе, для остальных пикселей сохраняется разница с базовым (дельта). Для этой цели используется матрица 8x8 пикселей. Поскольку близко расположенные пиксели обычно мало отличаются по цвету, хранение для них разницы оказывается по объёму информации выгоднее, чем полного значения цвета. Поэтому в случае дельта-компрессии информация о пикселях занимает меньше места в памяти, также достигается экономия пропускной способности памяти. В качестве примера работы технологии можно привести полностью черный и белый блоки, которые будут храниться в памяти как {1.0, 0.0, 0.0, 0.0} или {0.0, 1.0, 1.0, 1.0}. Здесь можно сэкономить ресурсы, сохраняя только 0.0 или 1.0 в качестве значения.

NVIDIA улучшила процедуру определения сжимаемого контента. Ранее известное соотношение 2:1 теперь может использоваться чаще, то есть применяться к большему массиву данных. Появились и соотношения сжатия 4:1 и 8:1.

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