Table of Contents
GPUs are equipped with video RAM memory inside, since graphics processors or GPUs have the ability to access it. But is it possible to put a mass storage device like an SSD on a graphics card? It is and we will explain it to you in this article.
One of the performance problems that professionals who use their graphics card for content creation face on a daily basis is how limited the VRAM is, suddenly if the data is too much it goes down to the system’s SSD disk or whatever. it is worse, to a conventional hard disk.
The solution to it? place NVMe memory inside the graphics card, either through a slot for M.2 disks or with NVMe memory soldered on the board.
NVMe memory to increase the amount of VRAM
One of the peculiarities of graphic cards used in professional environments is that they usually use VRAM in a configuration known as “clamshell” which is typical of DDR memory, in which two GDDR memory chips are connected to a common memory interface, but since the connection is with two chips instead of just one, as would be usual, what is done is dividing the data bus between the two, in such a way that each memory chip has half the bandwidth that only one, but for each memory controller interface
But with the advent of the DirectStorage API and SSD memory support in GPUs it is now possible to give NVMe memory access to a GPU, making it possible to create an additional level in the GPU hierarchy, in which to store data that you can use the GPU to access them faster.
For example we can have a scene to render that occupies several tens of Gigabytes and that we usually need to access the hard disk, thanks to the access speed of the NVMe it is possible to access this information very quickly. But, wouldn’t it be better if the GPU had such memory?
There is an SSD on my graphics card
A few years ago AMD presented the Radeon SSG, this card was an AMD Vega with a particularity and that is that it had up to 2 TB of NVMe storage in the form of 4 SSDs of the M.2 type inside. This concept was not very successful in the market and the Radeon SSG remained as an anecdote.
But this idea seems to have ended up liking Microsoft, which decided to standardize it in the DirectStorage API and asked AMD to integrate it into the Xbox Series X SoC. Those of Lisa Su on the other hand did not hesitate to offer the technology to SONY and the The result is a new generation of consoles not only based on the SSD but in which the “VRAM” has a greater capacity.
The concept is very simple, the GPU sees both the VRAM and the memory of the SSD as if it were the same memory well, but through an advanced memory controller, when a request is made to an address corresponding to the SSD it is copied to a part of the VRAM itself that serves as the data cache for the SSD, so thanks to the high speed of the PCI Express interface, data is quickly transferred from NVMe memory to RAM in a totally transparent way.
How does the graphics access the SSD on the card?
Every GPU has two DMA units that allow you to access not only the system RAM, but in the latest GPUs launched on the market and that are compatible with DirectStorage, what has been done is to give access to the system’s SSD by giving access to PCI Express ports.
But installing an SSD in the GPU is different, since this memory would be before the PCI Express port, for this it would be necessary to add 4 PCI Express lines to place an SSD, which is what AMD did with the Radeon SSG, but in the case from the AMD graphics card what they did was add another 16-line PCIe interface, hence it has 4 M.2 drives.
Although it may seem stupid to put one or more SSD interfaces on a graphics card or, failing that, to solder an SSD with NVMe memory, in reality it is not at all if we take into account the enormous advantages that this implies, especially for the GPU when searching for large volumes of data.
Key to Video Editing and Professional Ray Tracing
One of the utilities of GPUs is when it comes to encoding and decoding video in real time, although there are units specialized in this, when it comes to transferring a video from one format to another, especially if we are talking about a large one. size we can find that the information ends up not fitting in the VRAM and is dumped on a hard disk.
The fact of having an SSD allows that content to be dumped into the SSD once it disappears from the VRAM, imagine being editing a huge video of several tens or hundreds of Gigabytes on your PC and finding that the graphic has direct access to it. This is extremely useful for what is called Video Encoding, which is converting a video file from one format and resolution to another format and resolution in real time to be transmitted via streaming.
The fact that the video CODEC located on the GPU has access to an SSD located on the graphics card means speeding up performance, since searching for data is much shorter than searching for an SSD installed in the system. Which means being able to access streaming video data as quickly as possible, ideal for video editing at 4K resolutions.
Another key utility will be for professional Ray Tracing, with the aim of completely storing the entire spatial data structure of an extremely complex scene, this will help speed up the rendering process and prevent systems from spending long time in generate a scene or a succession of them.
It can be concluded that the addition of NVMe drives or SSDs in a graphics card is something that greatly helps the performance of a GPU in professional environments and that it will be a spearhead in the hardware market for professional content creators.