CUDA Academy · Lektion

Migrering av sidor vid behov

Fel flyttar data dit den används.

Lektion 2 av 413 steg

Migrering av sidor vid behov är en gratis lektion i CUDA Academy på CoddyKit. Detta är lektion 2 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för CUDA Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i CUDA Academy innehåller totalt 4 lektioner.

Var finns data?

Med managed memory har data ingen fast hemvist. Den flyttas tyst mellan CPU och GPU genom on-demand page migration och följer efter där den används.

Minne kommer i sidor

Systemet håller reda på minnet i fasta delar som kallas sidor, ofta 4 KB eller 64 KB. Migreringen sker en sida i taget, inte byte för byte.

Ett sidfel utlöser det

När GPU:n använder en sida som finns på CPU:n uppstår ett sidfel. Drivrutinen pausar, kopierar över sidan och låter sedan tråden fortsätta.

Data följer åtkomsten

Regeln är enkel: data migrerar till den som använder den. Skriv på CPU:n så finns sidorna där; läs i en kernel så flyttas de till GPU:n.

Första åtkomsten är långsam

Kostnaden uppstår vid den första åtkomsten från en ny sida. När sidan har kommit fram är senare läsningar på samma enhet snabba och lokala.

Pingpong skadar

Om CPU:n och GPU:n fortsätter att använda samma sidor växelvis studsar de fram och tillbaka. Denna pingpong-migrering kan i tysthet förstöra er genomströmning.

Sidfel ackumuleras

Varje sidfel medför startkostnader, så tusentals små sidfel blir dyra. Migrering i bulk är bättre än att utlösa sidfel för en spridd sida i taget.

Lokalitet spelar fortfarande roll

Även med automatisk migrering lönar sig bra åtkomstmönster. Trådar som läser närliggande adresser hämtar hela sidor effektivt i stället för att sprida ut sidfelen.

Överbokning är tillåten

Migrering gör det möjligt att allokera mer än vad GPU:n rymmer. Sidor flödar in efter behov och gamla sidor avlägsnas, så även stora datamängder kan köras, fast långsammare.

Ni kan se sidfelen

Profilerare som Nsight Systems visar migreringstrafik och antal sidfel. Om ni upptäcker omfattande migrering vet ni exakt var ni ska lägga till ledtrådar härnäst.

Bekvämt, men med en hake

On-demand-migrering är underbart automatisk, men sidfelen är inte kostnadsfria. Genom att känna till kostnaden kan ni åtgärda den med förhämtning och råd.

Snabb kontroll

Låt oss säkerställa att ni vet vad som startar en migrering.

Sammanfattning: On-Demand Migration

Ni såg att managed-sidor migrerar vid ett sidfel till den som använder dem. Första åtkomsten är långsam, pingpong skadar och massförflyttning lönar sig. Nu går vi vidare! 🚀

Gratis att börja

Lär dig C++ med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
30
Lektioner
120

Vanliga frågor

Är lektionen ”Migrering av sidor vid behov” gratis?

Ja – hela texten till ”Migrering av sidor vid behov” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i CUDA Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i CUDA Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”Migrering av sidor vid behov”?

Fel flyttar data dit den används. Ni övar på CUDA Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig CUDA Academy?

Du behöver inga förkunskaper. Utbildningen i CUDA Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 2 av 4.

Hur lång tid tar lektionen ”Migrering av sidor vid behov”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här CUDA Academy-lektionen?

Ja. Varje CUDA Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. En pekare, båda sidor
  2. Migrering av sidor vid behov
  3. Förinläsning med cudaMemPrefetchAsync
  4. Tips via cudaMemAdvise
← Tillbaka till CUDA Academy