Witaj, GPU: pierwszy plik .cu
Zbudować i uruchomić minimalny program CUDA.
Witaj, GPU: pierwszy plik .cu to bezpłatna lekcja CUDA Academy na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej CUDA Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs CUDA Academy zawiera 4 lekcji w sumie.
Pierwszy plik .cu
Czas zbudować coś rzeczywistego. Program CUDA znajduje się w pliku .cu, który może zawierać obok siebie zarówno kod CPU, jak i GPU. 🎉
Dołącz nagłówek
Większość przykładów CUDA zaczyna się od dołączenia standardowych nagłówków. Nagłówek CUDA runtime jest dołączany automatycznie przez nvcc, więc często wystarczy iostream.
#include <cstdio>Oznaczanie kernela
Funkcja wykonywana na GPU to kernel. Należy oznaczyć ją kwalifikatorem __global__, aby nvcc skompilował ją dla urządzenia.
__global__ void hello() {
}Wyświetlanie z GPU
Wewnątrz kernela można wywołać printf tak samo jak na CPU. Każdy wykonujący go wątek GPU wypisze własny wiersz.
__global__ void hello() {
printf("Hello from GPU\n");
}Składnia uruchamiania
Aby uruchomić kernel, należy użyć konstrukcji uruchomienia triple-angle-bracket. Liczby w jej środku określają liczbę bloków i wątków, które zostaną wykonane.
hello<<<1, 1>>>();Uruchomienia są asynchroniczne
Uruchomienie kernela natychmiast zwraca sterowanie, podczas gdy GPU pracuje w tle. CPU kontynuuje działanie, co jest wydajne, ale początkowo może być zaskakujące.
Oczekiwanie na GPU
Z tego powodu przed zakończeniem programu trzeba wykonać synchronizację, inaczej dane wyjściowe printf mogą nigdy nie pojawić się na ekranie.
cudaDeviceSynchronize();Połączenie elementów
Funkcja main uruchamia kernel, a następnie czeka na jego zakończenie. To cały szkielet działającego programu CUDA.
int main() {
hello<<<1, 1>>>();
cudaDeviceSynchronize();
}Skompiluj program
Zapisz plik jako hello.cu i zbuduj go za pomocą nvcc, nazywając program wynikowy przy użyciu flagi -o.
nvcc hello.cu -o helloUruchom program
Teraz uruchom program. Wyświetlenie komunikatu Hello from GPU oznacza, że kod rzeczywiście wykonał się na urządzeniu. To pierwszy wynik z GPU! 🚀
./helloWiele wątków naraz
Zwiększ liczbę uruchamianych wątków, a zobaczysz powitanie wyświetlone wiele razy — po jednym wierszu na wątek. To prawdziwy przykład działania równoległego.
hello<<<1, 8>>>();Szybkie sprawdzenie
Jeden szczegół decyduje o powodzeniu lub niepowodzeniu tego programu.
Podsumowanie
Napisał(a) Pan/Pani prawdziwy program CUDA: kernel __global__, uruchomienie z potrójnym nawiasem oraz synchronizację. Skompiluj go za pomocą nvcc, uruchom, a GPU przywita się z Panem/Panią. Gratulacje! 🎓
Ucz się C++ dzięki korepetycjom AI — za darmo
Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.
- Kursy
- 30
- Lekcje
- 120
Często zadawane pytania
Czy lekcja „Witaj, GPU: pierwszy plik .cu” jest bezpłatna?
Tak — pełny tekst „Witaj, GPU: pierwszy plik .cu” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu CUDA Academy, przejdź na CoddyKit PRO. Kurs CUDA Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Witaj, GPU: pierwszy plik .cu”?
Zbudować i uruchomić minimalny program CUDA. Ćwiczysz CUDA Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć CUDA Academy?
Nie wymagamy żadnego doświadczenia. CUDA Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.
Ile czasu zajmuje lekcja „Witaj, GPU: pierwszy plik .cu”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji CUDA Academy?
Tak. Każda lekcja CUDA Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Wersje sterownika, środowiska wykonawczego i Toolkit
- Profesjonalne odczytywanie nvidia-smi
- Kompilowanie za pomocą nvcc
- Witaj, GPU: pierwszy plik .cu