Ευχαριστούμε που στάλθηκε η αποσαφήνισή σας! Ένα μέλος της ομάδου μας θα επικοινωνήσει μαζί σας σύντομα.
Ευχαριστούμε για την εκδήλωση κράτησης! Ένας από τους συνεργάτες μας θα επικοινωνήσει μαζί σας σύντομα.
Διάρκεια 8 Ώρες
Εξέλιξη Κομματιού
Υπολογισμός GPU και Αρχιτεκτονική CUDA
- Διαφορές αρχιτεκτονικής CPU έναντι GPU
- Μοντέλο streaming multiprocessor NVIDIA GPU
- Επισκόπηση μοντέλου προγραμματισμού CUDA
- Μικτή υπολογιστική υποδομή και το παραγόμενο (host-device) υπόδειγμα
Ρύθμιση του Περιβάλλοντος Προγραμματισμού CUDA
- Εγκατάσταση του CUDA Toolkit 13.x
- Μεταγλωττιστής NVCC και workflow κατασκευής
- Επαλήθευση του περιβάλλοντος με ερωτήματα συσκευής
- Ενσωμάτωση IDE και εργαλεία ανάπτυξης
Δημιουργία και Εκκίνηση Πυρήνων CUDA
- Syntax και προσδιοριστές συναρτήσεων πυρήνα
- Διαμόρφωση εκκίνησης και εκτέλεση
- Πρόσθεση διανυσμάτων και βασικά μοτίβα παράλληλης επεξεργασίας δεδομένων
- Μακροεντολές ελέγχου σφαλμάτων CUDA
Ιεραρχία Νημάτων CUDA και Μοντέλο Εκτέλεσης
- Οργάνωση Grid, block και thread
- Αρίθμηση νημάτων και υπολογισμός καθολικού ID
- Εκτέλεση warp και μοντέλο SIMT
- Κατοχή (Occupancy) και εκμετάλλευση πόρων
Αρχιτεκτονική Μνήμης GPU και Διαχείριση
- Τύποι μνήμης: global, shared, constant, registers
- Αlokίωση και απελευθέρωση μνήμης συσκευής
- Μεταφορές host-to-device και device-to-host
- Mνήμη shared για συνεργασία εντός block
Ενοποιημένη Μνήμη και Μετανάστευση Δεδομένων
- Μοντέλο ενοποιημένης μνήμης και managed allocations
- Mετάναστεση σελίδων και on-demand paging
- Ασύγχρονη προ-μεταφόρτωση (prefetching) με cudaMemPrefetchAsync
- Υποδείξεις μνήμης για μοτίβα πρόσβασης
Χαρτογράφηση Συστήματος με Nsight Systems
- Ανάλυση χρονοδιαγράμματος Nsight Systems
- Ταυτοποίηση σημείων συγχρονισμού CPU-GPU
- Οπτικοποίηση εκτέλεσης πυρήνα και μεταφορών μνήμης
- Ερμηνεία δεδομένων επιδόσεις συστήματος
Βελτιστοποίηση Πυρήνων με Nsight Compute
- Διεπαρκτική χαρτογράφηση πυρήνα Nsight Compute
- Ανάλυση απόδοσης μνήμης και εύρους ζώνης
- Εκμετάλλευση υπολογισμών και στατιστικά κατάστασης warp
- Οδηγούμενη ανάλυση και κανόνες βελτιστοποίησης
Ταυτόχρονες Ροές (Streams) και Ασύγχρονες Ενέργειες
- Ροές CUDA και προεπιλεγμένη ροή (default stream)
- Επικάλυψη εκτέλεσης πυρήνα με μεταφορές δεδομένων
- Συγχρονισμός ροών και γεγονότα CUDA
- Πατρότητα σχεδιασμού πολλαπλών ροών
Χειρισμός Σφαλμάτων και Εργαλεία Εντοπισμού Λαθών
- Κώδικες σφάλματος API CUDA και στρατηγικές ανάκτησης
- Compute-sanitizer για έλεγχο πρόσβασης μνήμης
- cuda-gdb για εντοπισμό λαθών πυρήνα
- Επαληθεύσεις (Assertions) και ανίχνευση συγχρονισμένων σφαλμάτων
Workflow Βελτιστοποίησης με Βάση τη Χαρτογράφηση
- Επαναλαμβανόμενη μεθοδολογία χαρτογράφησης
- Ταυτοποίηση και προτεραιοποίηση συγγενικών σημείων απόδοσης
- Έλεγχος εκδόσεων για regression επιδόσεων
- Στεκηνση αποφάσεων βελτιστοποίησης
Έργο Τελικής Εφαρμογής Επιταχυνόμενης Εφαρμογής Απ' άκρη σ' άκρη
- Σχεδιασμός ενός πλήρους επιταχυνόμενου με GPU λύσης
- Ενσωμάτωση χαρτογράφησης καθ' όλη τη διάρκεια της ανάπτυξης
- Δοκιμές benchmark απόδοσης και αναφορά
- Συμβάσεις υλοποίησης για παραγωγικό περιβάλλον
Απαιτήσεις
- Βασική δεξιότητα προγραμματισμού σε C/C++ συμπεριλαμβανομένων τύπων μεταβλητών, βρόχων, συνθηκών, συναρτήσεων και χειρισμών πινάκων
- Εξοικείωση με τη μεταγλώττιση και εκτέλεση προγραμμάτων από την γραμμή εντολών
- Δεν απαιτείται προηγούμενη εμπειρία σε προγραμματισμό GPU ή CUDA
Κοινό-στόχος
- Προγραμματιστές και μηχανικοί λογισμικού που επιθυμούν να επιταχύνουν εφαρμογές C/C++ με GPU
- Επιστήμονες ερευνητές και επαγγελματίες HPC που μεταβαίνουν από καθαρά υπολογιστικά συστήματα CPU σε μικτή (heterogeneous) υπολογιστική υποδομή
- Τεχνικοί ηγέτες που αξιολογούν την επιτάχυνση με GPU για φορτία εργασίας παραγωγικού περιβάλλοντος