Dziękujemy za wysłanie zapytania! Jeden z członków naszego zespołu skontaktuje się z Państwem wkrótce.
Dziękujemy za wysłanie rezerwacji! Jeden z członków naszego zespołu skontaktuje się z Państwem wkrótce.
Plan Szkolenia
Wprowadzenie
- Czym jest programowanie GPU?
- Dlaczego warto używać CUDA z Pythonem?
- Kluczowe pojęcia: Wątki, Bloki, Siatki
Przegląd funkcji i architektury CUDA
- Architektura GPU vs CPU
- Zrozumienie SIMT (Single Instruction, Multiple Threads)
- Model programowania CUDA
Konfiguracja środowiska programistycznego
- Instalacja CUDA Toolkit i sterowników
- Instalacja Pythona i Numba
- Konfiguracja i weryfikacja środowiska
Podstawy programowania równoległego
- Wprowadzenie do wykonywania równoległego
- Zrozumienie wątków i hierarchii wątków
- Praca z warpami i synchronizacją
Praca z kompilatorem Numba
- Wprowadzenie do Numba
- Pisanie jąder CUDA z użyciem Numba
- Zrozumienie dekoratorów @cuda.jit
Tworzenie własnego jądra CUDA
- Pisanie i uruchamianie podstawowego jądra
- Wykorzystanie wątków do operacji elementowych
- Zarządzanie wymiarami siatki i bloków
Zarządzanie pamięcią
- Rodzaje pamięci GPU (globalna, współdzielona, lokalna, stała)
- Transfer pamięci między hostem a urządzeniem
- Optymalizacja wykorzystania pamięci i unikanie wąskich gardeł
Zaawansowane tematy przyspieszania GPU
- Pamięć współdzielona i synchronizacja
- Wykorzystanie strumieni do asynchronicznego wykonywania
- Podstawy programowania wieloprocesorowego GPU
Przekształcanie aplikacji opartych na CPU na GPU
- Profilowanie kodu CPU
- Identyfikacja sekcji nadających się do równoległości
- Przenoszenie logiki do jąder CUDA
Rozwiązywanie problemów
- Debugowanie aplikacji CUDA
- Typowe błędy i sposoby ich rozwiązywania
- Narzędzia i techniki testowania i walidacji
Podsumowanie i kolejne kroki
- Przegląd kluczowych pojęć
- Najlepsze praktyki w programowaniu GPU
- Źródła do dalszej nauki
Wymagania
- Doświadczenie w programowaniu w Pythonie
- Doświadczenie z NumPy (ndarrays, ufuncs, itp.)
Grupa docelowa
- Programiści
14 godzin
Opinie uczestników (1)
Bardzo interaktywny z wieloma przykładami, z dobrą progresją w złożoności od początku do końca szkolenia.
Jenny - Andheo
Szkolenie - GPU Programming with CUDA and Python
Przetłumaczone przez sztuczną inteligencję