Accueil » Blog » [Hardware Facile] HBM et GDDR, comprendre la Vram

[Hardware Facile] HBM et GDDR, comprendre la Vram

VRAM

Vram est un terme qui doit vous parler à tous. Il signifie Video Random Access Memory, une variante de la mémoire RAM qui équipe nos PC de bureau et laptops. Ce type de mémoire permet de stocker de manière volatile des informations, des données utiles pour les applications graphiques. Il existe plusieurs types de mémoire vidéo qui répondent à des besoins spécifiques. L’évolution du marché ainsi que des technologies en ont fait un secteur segmenté et très compliqué.

Les types de mémoire

LA RAM :

En premier il est nécessaire de définir ce qu’est la RAM avant de pouvoir poursuivre. La mémoire vive est un type de SDRAM (mémoire dynamique synchrone) permettant des accès aléatoires et répondant à des impulsions électriques. Ainsi on trouve comme sur un processeur des pulsations qui sont répétées, et plus nous avons de pulsations par cycle, plus la mémoire est performante. Un cycle est une boucle permettant la requête et l’émission d’informations par la RAM. La fréquence quant à elle peut se définir comme le nombre de pulsations, quantifiée en Hertz (Hz). Plus votre fréquence est élevée en un cycle, plus votre mémoire est rapide, et en revanche si vos cycles sont plus longs, vous perdez en performance: on appelle cela les timings.

LA DDR :

La DDR peut se définir comme une mémoire à double bande passante. Ce nom n’existe qu’a titre indicatif et veut simplement dire « Une mémoire deux fois plus rapide que la SDRAM ». On trouvait sur les premières DDR un bus doublé, un débit doublé, ainsi qu’une fréquence bien plus élevée. D’après le JEDEC, l’organisme de normalisation des semi-conducteurs, une RAM peut être considérée comme DDR à partir de 1600 Mo/s.

LA GDDR :

La GDDR est une DDR dédiée aux applications graphiques, et est beaucoup plus performante que la DDR classique. On retrouve une bande passante plus élevée et un BUS mémoire bien plus large. La première GDDR pouvait exploiter un BUS 16 bits, là ou la DDR était bloquée à 9 bits. La GDDR est tout simplement plus en avance technologiquement, les finesses de gravure sont moins élevées et naturellement la consommation aussi. La GDDR avait été conçue pour fonctionner avec les processeurs RISC (CPU marchant avec un langage assembleur) qui ne pouvait traiter qu’une instruction à la fois mais très rapidement. Les fréquences et les performances de cette mémoire permettaient au processeur de concurrencer les autres architectures qui pouvaient effectuer des multiplications ainsi que des calculs complexes. Ci dessous un schéma pour une GDDR de 256 Mo :

VRAM

LA HBM :

La HBM est une mémoire à haute bande passante (High bandwith memory) lancée en 2015 en alternative à la GDDR. Au contraire de la cette dernière, la HBM n’utilise pas de hautes fréquences. Dans sa conception, on remarque qu’il est question d’empilement de DIE (cœurs du processeur), le tout en liaison avec un tunnel (microbump) qui permet de faire passer les informations. Le tout est relié à un DIE logique qui permet le transit des informations vers le processeur graphique (GPU). Les premières génération de HBM devaient se contenter de seulement 4 GB mais chaque couche de DRAM possédait ses propres canaux, ce qui fait qu’en cumulant les canaux les débits étaient impressionnants.

Générations et performances

LA GDDR2 :

La GDDR2 était une grande révolution, on la retrouvait sur la plupart des cartes graphiques de l’époque. La tension de cette mémoire était de 2.5V pour des fréquences avoisinants les 400 MHz. La mémoire a souffert de beaucoup de soucis de surchauffe à cause de la tension trop importante pour une technologie alors trop précoce.

LA GDDR3 :

La GDDR3 proposait des fréquences en nette augmentation avec des chiffes aux alentours de 800 MHz. La largeur de bus partait de 128 bits pour aller jusqu’à 384 bits pour les dernières versions. Cette mémoire a beaucoup été utilisée dans les consoles de jeu Xbox 360/PS3 et sur les cartes graphiques d’époque comme la HD-6670 ou HD-5450.

LA GDDR4 :

Moins connue et sûrement moins utilisée, la GDDR4 a pourtant existé et permettait des largeur de bus 512 bits. Le volume par puce fut passé à 8 Go et la tension baissée à 1.5V. On notera des fréquences supérieures à 1600 MHz pour un débit maximal de 3.2 Gbit/s. Très peu de cartes ont utilisé cette technologie, et on ne trouve que la ATI 3870 à ma connaissance.

LA GDDR5 :

Successeur de la GDDR4, cette mémoire est encore utilisée sur beaucoup de GPU et demeure très performante. On reste sur du 8 Go par puce mais le débit augmente à 8 Gbit/s avec des bus pouvant aller de 256 bits à 512 bits au total selon le nombre de puces employé. Quelques exemples de GPU a avoir utilisé cette génération: les GTX 970, 1060 et 1070 ou bien les R9 290X/390X/480.

LA GDDR5X :

La GDDR5X est une évolution de la GDDR5, cette mémoire peut fournir jusqu’au double de la GDDR5. On parle de débits avoisinants les 11 Gbit/s pour une bande passante de 350 Go/s. 

LA HBM1 :

La HBM est une petite révolution à elle toute seule. On retrouve une nouvelle manière de concevoir les puces mémoires avec un BUS très large en 1024-bit et des puces avec une bande passante de 128 Go/s. On retrouve un interposer qui permet une interconnexion entre les puces DRAM mais aussi avec le BUS PCI.

LA HBM2 :

La deuxième génération de HBM garde son BUS 1024-bit mais permet de monter à 256 Go/s et existe maintenant en puces de 8 et 16 Go. Pour le moment, il s’agit de la mémoire vidéo la plus puissante du marché.

LOCALISATION, BASES et interet

La Vram est utilisée sur les cartes graphiques et permet de stocker des informations rapidement. Comme sur un processeur, la fréquence, l’architecture et les débits influent sur les performances de celle-ci. Exactement comme la mémoire vive classique, il faut trouver le compromis entre quantité et performances; avoir beaucoup de Vram permet de stocker beaucoup de textures, mais avoir une génération trop vielle peut altérer les performances. Étant donné que nous parlons de puces soudées, ce sont des questions auxquelles vous serez peu confrontés, les constructeurs de GPU choisissent eux même la quantité optimale pour la gamme de prix.

VRAM DOSSIER

Pour illustrer le fonctionnement de la Vram, il est nécessaire de parler de la carte graphique et de bien comprendre comment cela marche. En premier on trouve un processeur graphique, c’est une puce qui effectue des calculs et qui reçoit les informations des applications graphiques. Ensuite on retrouve les ROPs, les unités de rendu. On peut dire que c’est ce qui contrôle l’antialiasing ainsi que la résolution, mais on trouve aussi les shaders, qui calculent l’éclairage, qui eux mêmes communiquent vers la mémoire vidéo VRAM. Cette mémoire vidéo va donc stocker l’ensemble de ces informations, de manière à ce que le processeur graphique puisse y accéder rapidement, en faisant par conséquent une mémoire extrêmement rapide. Ces informations vont ensuite passer par le BUS PCI-E pour répondre au CPU.

Pour pouvoir parler de manière un peu plus complexe de la création d’une image via GPU, il est important de comprendre de manière plus approfondie les unités permettant un tel niveau de qualité. On retrouve les « stream processors », processeurs de flux, qui permettent des calculs de nombre à virgule (floating). Ensuite viennent se greffer les « Raster Engines », des unités permettant de faire des polygones et donc modéliser vos entités dans les jeux via des triangles. Puis les unités de texturing, qui vont permettre de rajouter l’image sur les polygones, ces textures permettent par exemple un niveau de détail important sur votre personnage modélisé. Enfin, les ROPs traitent le tout pour en faire un rendu propre, via des techniques d’upscaling/downscaling et antialiasing. Un beau monde non ?

DOSSIER VRAM

Puisque vous connaissez maintenant les parties d’un GPU, il faut parler de la bande passante, facteur inévitablement indispensable à prendre en compte pour ne pas avoir de goulot d’étranglement sur son GPU. Puisque la mémoire sert à stocker des informations pour que le GPU puisse s’en servir, il faut bien que ces informations passent quelque part et à une certaine vitesse. Prenons un exemple pour illustrer la chose: une autoroute. Elle permet la circulation de véhicules qui représentent, dans notre cas, une information. Si elle souhaite dépasser sa capacité d’accueil maximale, elle se devra soit d’être plus large, soit faire circuler les voitures plus rapidement. Et c’est précisément là l’enjeu de la bande passante.

Une bande passante est appelée « BUS » et possède une certaine largeur. Cette largeur est définie en bits, et on trouve sur des modèles de carte graphiques récentes des bus en 128, 256 et 512 bits. Si l’on convertit ces bits en octets, on trouve la quantité maximale d’informations pouvant transiter en même temps. Sur un bus de 512 bits, il est possible de faire passer 64 Mo en même temps, ce qui fait quelque chose d’assez considérable. 

Si le bus peut être volumineux au possible, il ne signifie rien au final sur les capacités d’une carte puisque le nombre de données envoyées dépend de la vitesse de calcul du GPU. Si le chipset graphique est peu performant, alors un bus maximal ne servira à rien, puisque peu d’informations passeront en même temps. Il ne sera alors jamais question de saturation, il faut donc trouver un certain équilibre.

FONCTIONNEMENT DE LA VRAM

La VRAM, comme évoqué précédemment est un type de mémoire vive dédié aux cartes graphiques. Cette mémoire stocke des informations capitales, tout ce qui se passe à l’écran passe par le BUS pour arriver vers la mémoire.  La VRAM se quantifie en Go, une unité de stockage basique, on trouve généralement sur les cartes modernes, du 6 à 8 Go. Outre la quantité qu’il est possible de stocker, il existe aussi le facteur vitesse de la VRAM, qui se quantifie en GT/s. Plus vous aurez une valeur élevée, plus la mémoire sera rapide.

Attention au marketing sur la mémoire vidéo, les fiches techniques sont trompeuses, les GT/s peuvent se convertir en Hz. Si on vous annonce 6 GHz sur une VRAM, cette valeur est fausse. En soit la mémoire sera à 6 GT/s, si vous prenez cela sur de la GDDR5 qui peut faire 4 transfert par cycle, alors vous obtenez 1.5 GHz (6/4). Vous comprendrez donc que tout ceci n’est que du tape à l’œil.

Maintenant, si vous voulez savoir combien de Mo envoie/réceptionne votre VRAM, il suffit de multiplier nos 64 Mo du BUS 512-bits par le nombre de GT/s. Il faut faire maintenant le calcul en Mo, 64 x 6 = 384, on convertit en Go/s, donc 384 Go/s.

COMBIEN DE VRAM EN 2019 ?

Actuellement, nous sommes dans une phase ou nous pouvons trouver plusieurs types de VRAM, celles-ci sont très performantes et arrivent à proposer des débits vraiment excellents. En 2019, si l’on compte encore certaines anciennes générations chez Nvidia et AMD (Pascal, Vega, Turing, Radeon VII …), il est possible de se rendre compte que la quantité de Vram nécessaire augmente chaque année. 

En 2013, la plupart des cartes se contentaient de 2 Go de mémoire vidéo, 4 Go pour les plus haut de gamme, ce qui suffisait pour les textures et la résolution de l’époque. Avec la montée en résolution et le désir de sortir du 1080p, la demande de mémoire vidéo a fait un bond considérable. La première carte à proposer 8 Go de Vram était la R9 290X en édition spéciale, AMD ayant toujours été visionnaire sur ce point en faisant évoluer les cartes en concordance avec l’évolution des résolutions. 

Nous sommes maintenant dans une phase ou avoir 8 Go de mémoire est devenu une norme. Cela peut paraître énorme, mais il est aisé de les saturer. Ce qui est important à prendre en compte, c’est essentiellement le placement de votre GPU et la résolution cible dans laquelle la carte est censée se positionner. Inutile de mettre une GTX 1060 pour jouer en UHD, cela ne sera clairement pas suffisant et même si la carte avait été dotée d’une tonne de Vram, cela n’aurait rien changé, le GPU n’est simplement pas assez puissant. 

Il est très difficile de définir quel GPU est optimal pour une résolution, tant il y a de facteurs qui peuvent impacter. Vous devez prendre en compte le nombre de frames cible, la résolution cible et enfin quels paramètres graphiques vous souhaitez mettre. Ces facteurs impactent la quantité de Vram requise pour être à l’aise, d’où le choix du constructeur de carte d’équiper plus ou moins les produits selon leur placement.

Plus vous aurez de « FPS » plus il faudra charger et décharger la mémoire rapidement, plus rapidement les textures vont transiter, d’où l’intérêt d’une cadence élevée et d’un BUS relativement important. Plus vous montez en résolution, plus votre nombre de pixels augmente et donc par conséquent le nombre de données à stocker dans la Vram, et c’est un facteur essentiel dans l’impact sur la mémoire. Enfin, si vous augmentez vos paramètres graphiques, alors le jeu va augmenter la résolution interne des textures, augmenter le nombre d’effets à l’écran et donc, logiquement le nombre de données, ce qui impacte l’utilisation Vram.

Le mieux est donc de regarder un comparatif se rapprochant le plus de votre objectif graphique, ainsi vous pourrez savoir quelle carte se place le mieux dans une résolution ou un type de calcul. Actuellement le bon compromis est 8 Go de mémoire vidéo, pour du 1440p par exemple, avec des paramètres modestes.

 

VRAM