NVIDIA RTX IO: Vad är det och hur fungerar det på grafikkort?

En av de tekniker som NVIDIA introducerades tillsammans med den senaste generationen av GeForce-grafikkort var RTX IO, som kommer att finnas tillgängligt för NVIDIA 20 × 0 och 30 × 0-serien. Tack vare denna teknik kan grafikkorten i dessa NVIDIA-serier komma åt SSD ansluten till PCI Express som om det var minne av själva grafiken med liten inblandning av CPU. Hur fungerar det?

RTX IO ger åtkomst till SSD av GPU oavsett arkitekturen för den CPU som vi har installerat i systemet, eftersom det är själva GPU: n som är ansvarig för åtkomst till data från SSD, en egenskap som innan den inte implementerades. Åtminstone på NVIDIA GPU: er, eftersom vi hade sett en mindre avancerad implementering med AMD's HBCC integrerad i sin Vega-grafik.

NVIDIA RTX IO

RTX IO är implementeringen av DirectStorage på hårdvarunivå den där Microsoft har implementerats i DirectX 12 Ultimate och att det är ett API som låter oss komma åt ett minnesutrymme utöver vad som är video RAM. Och därför kan du begära specifik data från en SSD ansluten till en PCI Express-port.

Varför med NVIDIA RTX IO fungerar inte CPU: n på processen?

För att förstå varför CPU: n inte agerar i processen måste vi förstå hur GPU: n får åtkomst till systemminnet. Vilken GPU som helst, oavsett arkitektur, kan komma åt två olika minnesbrunnar:

  • Ditt lokala minne, vilket är det minne som ingår i grafikkortet ( VRAM ).
  • Systemminne (där processorn stoppar sina data).

För att komma åt den andra använder den en eller flera DMA-enheter som kommunicerar med systemets RAM-minne via PCI Express-bussen till minnet.

Diagram över GPU SSD Acceso

Kommer du ihåg systemen i SLI och Crossfire där vi hade två kort i samma system? Tja, mekanismen för att kommunicera med en SSD ansluten till en PCI Express-port skulle vara exakt densamma.

Anledningen till detta är att trots att vi har olika PCIe-ingångar på PC: n, på nivån för I / O-styrenheten (Southbridge) är alla koncentrerade till samma styrenhet och detta gör att alla enheter som är anslutna till PCI Express portar för att kunna skicka data till varandra, inklusive bland annat SSD (om den är ansluten till samma PCIe-styrenhet).

SSD som en förlängning av GPU-minnet

GPU: n vid åtkomst till SSD behandlar den som om den var RAM-minne, så i varje instruktion med åtkomst till RAM gör den en begäran till den specifika minnesadressen där data finns direkt. Genom en serie helt transparenta mekanismer, när data begärs som finns på SSD och inte i minnet, söks data på SSD och kopieras direkt till en del av RAM-minnet som används som en cache för SSD.

Demo av Unreal Engine 5

Detta gör det möjligt att ha praktiskt taget en stor mängd minne tillgängligt för systemet och gå utöver gränserna för VRAM för att komma åt vissa data. Det tar bara GPU att förbeställa att de ska kopieras till RAM.

Om vi ​​till exempel i ett öppet världsspel zoomar in i ett nytt område kan minnet ta bort texturer och annan data som inte längre behövs från RAM-minnet och laddas igen från SSD. Till exempel hade Unreal Engine-demo som släpptes för några månader sedan en ”bara” 768MB-brunn för att kopiera data från SSD till grafik-RAM.

Realtids datadekomprimering med en blygsam CPU

En av de saker som kommer med RTX IO och hittades sedan RTX 20 × 0 är en realtids datadekomprimeringsenhet.

Enheten tar komprimerad data som inmatning från SSD, utför dekompression i farten och skickar redan dekomprimerad data till grafens minne.

RTX IO Descompresor

Enheten har en datadekomprimeringshastighet som passar med att använda CPU, vilket skulle kräva ett stort antal kärnor för att utföra samma specifika uppgift i samma hastighet som RTX IO-dekompressorn.

Med detta säkerställer de från Huang bättre prestanda tack vare deras NVIDIA RTX IO-teknik, som kommer att kunna lindra prestandagap mellan mycket kraftfulla processorer och mycket mer blygsamma processorer.