VRAM Allocation vs. VRAM Usage - Hva er forskjellen?
Nvidia kunngjorde sin siste RTX 3000-serie med grafikkort 1. septemberSt., 2020 midt i massiv sprøytenarkoman. Disse grafikkortene lovet enestående ytelsesnivåer ikke bare i tradisjonell rasterisert gjengivelse, men også i moderne RayTracing-spill. RTX 3000-kortserien vil fortsette å bli noen av de raskeste kortene i markedet som konkurrerer med AMDs beste tilbud i RX 6000-serien. Den Ampere-baserte GPUen som var inne i disse kortene, var ganske rask på egen hånd, men den overlegne ytelsen var faktisk et resultat av en annen forbedring også. De to beste kortene i RTX 3000-serien, RTX 3090 og RTX 3080, hadde også splitter nytt GDDR6X-minne som er helt nytt for forbrukerens grafikkort.
RTX 3080 hadde en minnebufferstørrelse på 10 GB, mens RTX 3090 har en massiv 24 GB minnebufferstørrelse. Den relativt lite imponerende minnestørrelsen til RTX 3080 forårsaket ganske mye bekymring blant Nvidia-troende, spesielt med tanke på at det eldre RTX 2080 Ti-flaggskipet hadde 11 GB VRAM. Rett etter ga AMD ut sine splitter nye grafikkort i RX 6000-serien som alle hadde 16 GB VRAM, selv om de hadde de tregere GDDR6-minnemodulene. AMD pekte også i markedsføringsmaterialet mot muligheten for at moderne spill bruker mer enn 10 GB VRAM på oppløsninger som 4K. Kort tid etter ga Nvidia ut RTX 3060, som var et mellomstore grafikkort, men det hadde underlig 12 GB VRAM. Dette bidro bare til å gjørme vannet enda mer.
Minnestørrelsesdebatt
På grunn av den nominelle størrelsen på RTX 3080s VRAM-buffer, påpekte mange entusiaster at moderne spill kan kreve mer enn 10 GB VRAM under visse scenarier. Spesielt i høyere oppløsninger som 4K, har mange spill en tendens til å krysse 8 GB og 10 GB VRAM-grenser når de er lastet med eiendeler av høy kvalitet. Debatten ble intensivert da mange medier også ga eksempler på spill som Doom Eternal og Resident Evil som konsumerte mer enn 10 GB VRAM på 4K.
Nvidia trofast, derimot, svarte med den smarte observasjonen at mange av disse spillene faktisk tildelte mer VRAM enn de trengte, og dermed faktisk ikke brukte mer enn 10 GB VRAM om gangen. VRAM Allocation er et litt komplisert konsept som fungerer annerledes i hvert enkelt spill, men i utgangspunktet betyr det at spillet tar all VRAM som er tilgjengelig og fyller den med eiendeler som kan være nødvendig senere. Dette er et sterkt argument, da mange spill som Call of Duty Modern Warfare til og med vil tildele mer enn 20 GB VRAM hvis grafikkortet ditt har det.
AMD hoppet også inn i blandingen da de kunngjorde sin siste oppføring i RX 6000-serien, Radeon RX 6700 XT. AMD viste følgende lysbilde på presentasjonen som viser at flere spill "bruker" mer enn 8 GB VRAM under visse forhold. Ordet "bruk" er med vilje uklart.
For å forstå forskjellen mellom minnebruk og minnetildeling, må vi først forstå hva VRAM er og hva det faktisk gjør.
Hva gjør VRAM?
Det meste av "tungløfting" når det gjelder grafisk prosessering, gjøres av kjernen i grafikkortet som er kjent som GPU. GPU er et veldig kraftig stykke silisium som er designet og optimalisert for å behandle grafiske oppgaver som spill. Den håndterer det meste av behandlingen som er nødvendig for å skyve rammene som skjermen viser. Men for å behandle store datamengder og forberede rammene raskt nok, trenger GPU noe å jobbe med. Dette er hvor VRAM kommer inn.
VRAM eller videominne er et veldig høyhastighetsminneskjema som lagres på selve grafikkortet slik at GPU har direkte tilgang til det. VRAM lagrer eiendeler og teksturer som kreves av spillet, slik at GPUen kan jobbe med dem når det er nødvendig og forberede rammene som må vises. Hvis VRAM ikke kan levere disse eiendelene og andre viktige data til GPUen raskt nok, kan brukeren oppleve avmatning, stamming eller til og med krasj. Generelt krever høyere oppløsninger som 1440p og 4K med høye grafiske innstillinger mer VRAM for å administrere og lagre disse eiendelene av høyere kvalitet, noe som betyr at du trenger en høyere kapasitet på VRAM hvis du vil spille på disse innstillingene ved disse oppløsningene. Samtidig trenger du minne med høyere hastighet for å kunne flytte dataene til GPU fra VRAM raskt nok. Dette er hvor minneteknologier som GDDR6X vise seg nyttig.
VRAM Allocation
VRAM Allocation er et noe komplisert og vagt konsept, siden den faktiske applikasjonen varierer fra spill til spill og mellom forskjellige utviklere. I utgangspunktet, når et spill "tildeler" VRAM, krever det hele kortets minnebuffer og lagrer eiendeler og teksturer på det som det kan trenge senere. Et godt eksempel på VRAM-tildeling finner du i moderne Call of Duty-spill som Call of Duty Modern Warfare. Spesielt i flerspillerversjonen hevder spillet all VRAM som kortet har å tilby, og fyller det til randen med eiendeler og teksturer som kan være påkrevd på et tidspunkt i kampen. Dette kan omfatte forskjellige teksturer av objekter på kartet, forskjellige grafiske elementer, trådrammekart, etc.
Å hevde hele VRAM-kapasiteten og fylle den med riktignok unødvendige eiendeler kan virke bortkastet, men det tjener et formål. Når eiendeler er forhåndslastet i minnet som dette, trenger ikke spillet å vente på at den mye langsommere harddisken eller SSD-en skal laste inn eiendelen når det kreves på skjermen. Den nødvendige eiendelen kan raskt nås fra grafikkortets VRAM, som er mye raskere enn noen form for lagring tilgjengelig i dag. Dette gjør at spillet kan laste teksturer og eiendeler øyeblikkelig, og dermed unngå noen form for forsinkelse eller tekstur-pop-in-gjenstander. Den samlede spillopplevelsen forbedres derfor når denne teknikken brukes.
Man bør huske på at spillet faktisk ikke trenger å lagre alle disse eiendelene i videominnet for å fungere skikkelig. Hvis du kjører Call of Duty Modern Warfare på et grafikkort med 6 GB VRAM, vil det fungere helt greit mens du tildeler hele 6 GB VRAM-buffer. Tilsvarende vil spillet tildele til og med så mye som 20 GB VRAM hvis du spiller det på et grafikkort med mer enn 20 GB VRAM. Spillet bruker faktisk ikke alt VRAM for å gjengi scenen, men spillet lagrer potensielt viktige eiendeler og teksturer i VRAM som kan komme til nytte senere.
Faktisk VRAM-bruk
Mens noen moderne spill liker å tildele hele VRAM-kapasiteten til spillet for å optimalisere spillopplevelsen, bruker ikke eldre spill og en stor del av nyere spill denne teknikken. VRAM-tildeling er en ganske ny teknikk som har blitt populær de siste årene på grunn av økningen av grafikkort med mer enn 8 GB VRAM. Disse spillene bruker så mye VRAM som de faktisk trenger for å gjengi en scene, og resten forblir ubrukt.
VRAM-bruk kan defineres som mengden VRAM som er aktivt involvert i gjengivelse av en scene som vises på skjermen eller påfølgende scener som spillet trenger umiddelbar tilgang til eiendeler og teksturer for. VRAM-bruk er det faktiske målet for mengden VRAM et spill trenger for å fungere skikkelig. Hvis et spill "bruker" 8 GB VRAM under visse forhold, vil det å ha mindre enn 8 GB VRAM føre til alvorlige problemer og stammere eller kanskje til og med krasje hvis disse vilkårene er oppfylt.
Det bør bemerkes at overvåking av programvare som MSI Afterburner ikke har mulighet til å skille VRAM Allocation fra VRAM-bruk, og viser derfor bare VRAM-tildeling. Dette betyr at avlesningen av VRAM i disse programvarene kan være veldig forskjellig mellom forskjellige datamaskiner. Hvis et spill som DOOM Eternal tildeler 12 GB VRAM på en PC med en RTX 2080 Ti, kan det kanskje ikke overføres direkte til en annen PC som har et grafikkort med bare 8 GB VRAM. Dette betyr at VRAM-tildeling varierer mellom forskjellige PC-er med forskjellige grafikkort, og ikke lett kan replikeres på tvers av forskjellige systemer. VRAM-bruk, derimot, kan nesten alltid replikeres i ganske nøyaktig grad på tvers av forskjellige systemer.
Hvor mye VRAM trenger du?
Dette er et eldgamle spørsmål som har blitt gjentatt med hver nye grafikkortutgivelse og sannsynligvis kommer til å bli gjentatt igjen i fremtiden også. Likevel forblir svaret det samme; det kommer an på. VRAM-bruken varierer veldig mellom forskjellige spill som er bygget på forskjellige motorer ved hjelp av forskjellige utviklingsteknikker. Man kan ikke bare tilordne en VRAM-verdi til et spill eller et sett med spill og være ferdig med det. Det er mange faktorer som påvirker VRAM-bruken i virkeligheten.
Den største faktoren som påvirker VRAM-bruken er oppløsningen din. De tre viktigste oppløsningene i dag er 1080p, 1440p og 4K. VRAM-oppløsningen øker ganske eksponentielt når vi øker oppløsningen fra 1440p til 4K, mens hoppet fra 1080p til 1440p også er ganske betydelig. 4K er oppløsningen som krever mest VRAM per i dag, men samtaler om 8K-spill truer også i horisonten.
Den andre faktoren som påvirker VRAM-bruken betydelig, er typen spill du spiller på grafikkortet ditt. Hvis du er mer interessert i sanntids strategispill, vil VRAM-bruken din være betydelig lavere enn en annen spiller som er mer interessert i spill i åpen verden. Tilsvarende vil en litt eldre AAA-tittel som Assassin’s Creed IV: Black Flag forbruke mye mindre VRAM enn den siste oppføringen i serien: Assassin’s Creed Valhalla. Det er ingen tommelfingerregel for VRAM-bruk, men hvis vi ser på det brede spekteret av spill på tvers av flere sjangre, er AAA-spill i åpen verden de som bruker den høyeste mengden VRAM. Husk, vi snakker om VRAM-bruk her og ikke VRAM-tildeling.
Innstillingene i spillet påvirker også VRAM-bruk ganske tungt. De fleste spill har i dag en rekke grafiske innstillinger som du kan endre for å optimalisere spillopplevelsen. Det er noen innstillinger som har ganske betydelig innvirkning på VRAM-bruken. Teksturkvalitet er den viktigste innstillingen du må passe på når du snakker om VRAM. Teksturer av høyere kvalitet ser betydelig bedre ut enn de med lavere kvalitet, men de bruker også mye mer VRAM, noe som kan være et problem for de spillere som mangler i denne avdelingen. Skyggekvalitet er en annen innstilling som kan ha en merkbar innvirkning på VRAM-bruken, og anti-aliasing-teknikker som MSAA eller Multi-Sample Anti-Aliasing kan også øke VRAM-bruken din betydelig.
Er 10 GB VRAM nok?
Det er vanskelig å sette et nøyaktig tall på hvor mye VRAM som faktisk kreves i dag. VRAM-kravene til en spiller kan variere sterkt fra VRAM-kravene til en annen spiller. Imidlertid kan noen få generaliserte observasjoner gjøres i denne forbindelse, med tanke på VRAM-bruksnumrene til forskjellige spill i forskjellige oppløsninger.
Hvis du er en spiller som liker å spille det nyeste og beste AAA-spillet på 4K med alle innstillingene maksimert, kan 10 GB kanskje bare være knapt nok for dine behov, for nå. Men hvis du er villig til å skru ned noen få innstillinger, eller skru ned oppløsningen til 1440p og spille med høyere bildefrekvens, bør 10 GB VRAM vare i en stund fremdeles. For konkurransedyktige spillere og spillere som liker å spille lettere eller eldre titler, bør til og med 8 GB VRAM være nok, selv om du planlegger å spille i 4K-oppløsning.
Avsluttende ord
VRAM-tildeling er et vanskelig konsept som blir mer og mer populært i dag med økningen av grafikkort med mer enn 8 GB VRAM. Tildeling er ganske forskjellig fra faktisk VRAM-bruk, men da tildeling bruker potensielt all VRAM som er tilgjengelig for å optimalisere spillopplevelsen. På den annen side er VRAM-bruk den faktiske mengden VRAM som kreves av spillet for å gjengi en bestemt scene. De to parametrene er ganske forskjellige, og dette har forårsaket mye forvirring blant spillere rett og slett fordi de er gruppert under samme paraply av "VRAM". Med flere og flere spill som benytter seg av teknikken for VRAM-tildeling, må industrien finne ut en måte å skille mellom de to for å fjerne uklarheter og feilinformasjon som er vanlig akkurat nå.