Hej GPU: Deres første .cu-fil
Byg og kør et minimalt CUDA-program.
Hej GPU: Deres første .cu-fil er en gratis CUDA Academy-lektion på CoddyKit. Dette er lektion 4 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i CUDA Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. CUDA Academy-kurset indeholder 4 lektioner i alt.
Din første .cu-fil
Nu skal du bygge noget rigtigt. Et CUDA-program ligger i en .cu-fil, som kan indeholde både CPU- og GPU-kode side om side. 🎉
Medtag headeren
De fleste CUDA-eksempler starter med at inkludere standardheadere. CUDA-runtime-headeren inkluderes automatisk af nvcc, så iostream er ofte nok.
#include <cstdio>Markering af en kernel
En funktion, der kører på GPU'en, er en kernel. Du markerer den med kvalifikatoren __global__, så nvcc kompilerer den til enheden.
__global__ void hello() {
}Udskrivning fra GPU'en
Inde i kernelen kan du kalde printf ligesom på CPU'en. Hver GPU-tråd, der kører den, producerer sin egen outputlinje.
__global__ void hello() {
printf("Hello from GPU\n");
}Startsyntaksen
For at køre en kernel bruger du en start med tre vinkelparenteser. Tallene indeni bestemmer, hvor mange blokke og tråde der udfører den.
hello<<<1, 1>>>();Starter er asynkrone
En kernel-start returnerer med det samme, mens GPU'en arbejder i baggrunden. CPU'en fortsætter, hvilket er effektivt, men kan være overraskende i begyndelsen.
Vent på GPU'en
Derfor skal du synkronisere, før programmet afsluttes, ellers vises printf-outputtet måske aldrig på skærmen.
cudaDeviceSynchronize();Sæt det hele sammen
Din main-funktion starter kernelen og venter derefter. Det er hele grundstrukturen i et fungerende CUDA-program.
int main() {
hello<<<1, 1>>>();
cudaDeviceSynchronize();
}Kompilér det
Gem filen som hello.cu, og byg den med nvcc. Navngiv outputprogrammet med flaget -o.
nvcc hello.cu -o helloKør det
Kør nu programmet. Hvis du ser Hello from GPU udskrevet, betyder det, at din kode faktisk blev udført på enheden. Det er dit første GPU-output! 🚀
./helloMange tråde på én gang
Forøg starten til mange tråde, så ser du hilsenen udskrevet flere gange, én linje pr. tråd. Det er ægte parallelisme i praksis.
hello<<<1, 8>>>();Hurtigt tjek
Én detalje kan få dette program til at fungere eller fejle.
Opsummering
Du skrev et rigtigt CUDA-program: en __global__-kernel, en start med tre vinkelparenteser og en synkronisering. Kompilér med nvcc, kør det, og GPU'en hilser på dig. Tillykke! 🎓
Lær C++ med en AI-underviser — gratis
Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.
- Kurser
- 30
- Lektioner
- 120
Ofte stillede spørgsmål
Er lektionen “Hej GPU: Deres første .cu-fil” gratis?
Ja — hele teksten til “Hej GPU: Deres første .cu-fil” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af CUDA Academy-kurset, skal du opgradere til CoddyKit PRO. CUDA Academy-kurset indeholder 4 lektioner i alt.
Hvad lærer jeg i “Hej GPU: Deres første .cu-fil”?
Byg og kør et minimalt CUDA-program. Du øver dig i CUDA Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.
Skal jeg have erfaring for at begynde på CUDA Academy?
Der kræves ingen tidligere erfaring. CUDA Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 4 af 4.
Hvor lang tid tager lektionen “Hej GPU: Deres første .cu-fil”?
De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.
Kan jeg skrive og køre kode i denne CUDA Academy-lektion?
Ja. Alle CUDA Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.
Alle lektioner i dette kursus
- Versioner af driver, runtime og toolkit
- Læs nvidia-smi som en ekspert
- Kompilér med nvcc
- Hej GPU: Deres første .cu-fil