Сучасна відеопам’ять GDDR5 vs HBM

Ні для кого не секрет, що сучасним відеокартам для роботи потрібна власна пам’ять, причому чим більше і чим швидше — тим краще. І на сьогоднішній день йде змагання двох різних типів пам’яті — «традиційною» GDDR5 і нової HBM. Кожна з них має свої плюси і мінуси, і в цій статті розглянемо, що краще для ігрової відеокарти.

Історія GDDR — як DDR, тільки швидше

Коли відеокарти почали активно розвиватися, творці відеокарт особливо не замислювалися, яку пам’ять використовувати швидкостей звичайної ОЗП цілком вистачало для роботи, тому її вони використали. Однак час минав, продуктивність відеокарт росла дуже швидко, а от швидкість ОЗП нарощувалася повільно: наприклад, пропускна здатність FPM RAM в 1990 році була близько 200 Мбіт/с, а в DDR2 до 2005 року вона була всього 3200 Мбіт/с, тобто за 15 років зростання був у 16 разів. Відеокарти ж за той час пройшли шлях від простого прискорення 2D графіки на дозволах порядку 400х200 пікселів до повноцінного виведення 3D при FHD, тобто зростання продуктивності було на 2 порядку мінімум. Тому швидкостей звичайної ОЗП у відеокартах вже стало не вистачати, і в 2006 році з’явилися перші рішення на GDDR2 пам’яті: по суті це була та ж DDR2, але працює на істотно більш високих частотах і використовує більш коротку шину.

Надалі вийшло покращення у вигляді GDDR3, яка мала ще більші частоти. GDDR4 з-за невеликого приросту продуктивності в порівнянні з GDDR3 широкого поширення не отримала, і ось, у 2008 році вийшов перший відеоприскорювач на GDDR5 пам’яті, яка вже була заснована на DDR3 (вона в середньому вдвічі швидше DDR2). І з тих пір прогрес відчутно сповільнилося — лише в 2016 році стали виходити рішення на GDDR5X: так, цей тип пам’яті в теорії може бути вдвічі швидше GDDR5, але нічого якісно нового він не привніс (по суті контролер GDDR5X просто може вибирати за цикл 64 байта пам’яті проти 32 у GDDR5, звідси і йде зростання в 2 рази):
У підсумку, грубо кажучи, за майже 30 років існувань відеоприскорювачів їх пам’ять якісно не змінювалася — це все та ж ОЗУ, просто дуже швидка.

HBM — як SSD в світі HDD

Отже, як ми з’ясували, GDDR5 є по суті звичайної оперативної пам’яттю: швидкі чіпи пам’яті з ефективною частотою близько 6-9 ГГц, з’єднуються з GPU за допомогою вузької шини, всього 128-512 біт. У випадку з HBM AMD вчинили по-іншому: ефективні частоти пам’яті низькі, близько 1 ГГц (порівнянно з GDDR2), але використовується чотири стека (stack — пачка, стопка) чіпів пам’яті, кожен з яких має шину в 1024 біта — в підсумку для зв’язку з GPU виходить шина в 4096 біт — до 8 разів ширше, ніж у випадку з GDDR5.

Однак це накладає свої обмеження: навіть шину в 512 біт підвести до GPU буває досить важко, а з шиною до 4096 біт це взагалі було нереально, тому AMD довелося піти іншим шляхом: розмістити чіпи пам’яті на одній підкладці з GPU. На жаль — це принесло як і плюси, так і мінуси: з одного боку, таке близьке розміщення чіпів пам’яті до GPU дозволяє істотно спростити конструкцію і прискорити взаємодію пам’яті з відеочіпом, з іншого боку — з-за технічних проблем з реалізацією великих чіпів (і великої кількості чіпів) на одній підкладці, довелося обмежити розмір пам’яті одного стека одним гігабайтом, а так як стека чотири — максимальний обсяг HBM пам’яті для одного відеочіпа може бути 4 ГБ:

 З урахуванням того, що ця пам’ять була дуже дорогою, а виробництво важким — AMD стали ставити її лише під флагмани (Fury X, Fury Nano), і тут обсяг до 4 ГБ зіграв над AMD злий жарт: продуктивність GPU у Fury була хороша, місцями порівнянна з референсною GTX 980 Ti, але от в останній 6 ГБ пам’яті, і в іграх, де потрібно більше 4 ГБ пам’яті (Rise of Tomb Rider, Deus Ex: Mankind Divided), відеокарта від AMD змушена була використовувати ОЗП як частина відеопам’яті, і тому підсумковий fps був відчутно нижче, ніж у 980 Ti.

У 2016 році AMD представляє нову версію своєї пам’яті, HBM2. Виправлень було багато: по-перше, частота пам’яті зросла з 500 МГц (ефективні 1 ГГц DDR) до 2 ГГц (відповідно 4 ГГц DDR), по-друге — стали використовуватися так звані псевдоканали: один апаратний канал пам’яті розбивається на два віртуальних, тобто один стек тепер може обслуговувати вдвічі більше пам’яті. Так само виросло саме можливе число стеків — тепер їх може бути не 4, а 8. У підсумку, до одного GPU тепер можна «підключити» 1 ГБ х 2 х 8 = 16 ГБ пам’яті, що дуже солідно (нагадаю — топове користувальницьке рішення, Titan Xp, має 12 ГБ GDDR5X пам’яті).

Порівняння продуктивності — HBM2 vs GDDR5X

У результаті, на даний момент, HBM2 позбулася, мабуть, єдиною «дитячої хвороби» — обсягу пам’яті тепер з надлишком вистачає для сучасних ігрових відеокарт. Залишається одне питання — хто ж все-таки швидше? Для цього візьмемо два топових рішення від компанії PNY (яка відома своїми професійними відеокартами).

Nvidia Quadro GP100 має 16 ГБ HBM2 (тобто теоретичний максимум), і її пропускна здатність — 717 Гб/с:

 Nvidia Quadro P6000 є топовим рішенням з GDDR5X, її тут 24 ГБ, з пропускною здатністю у 432 Гб/с:


Цифри говорять самі за себе. Навіть з урахуванням того, що GDDR5X можна розігнати, саму стелю, що вдасться отримати — це 500 Гб/с, що все ще на 30% повільніше швидкості HBM2. Що це означає для користувачів? Нарешті, через кілька десятків років, ми отримуємо дійсно нову пам’ять, яка не буде стримувати зростання продуктивності GPU. А з урахуванням того, що в професійних рішеннях HBM2 вже використовується, її можна очікувати вже в наступному поколінні користувальницьких відеокарт від Nvidia (Volta) і в поточному від AMD (Vega).

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *