
Formation : Introduction Ă KOKKOS (programmation CPU et GPU)
Responsable : Juan José Silva Cuevas
Intervenants : 2 IngĂ©nieurs de lâĂ©quipe CExA, Juan JosĂ© Silva Cuevas
Ce cours présente les bases de Kokkos sur CPU et GPU. Il s'adresse aux débutants souhaitant développer un premier programme en utilisant les structures de données fondamentales, les boucles parallÚles et les réductions parallÚles.
- Public concerné
- Pré-requis
- Durée et modalités
- Contenu de la formation
- Supports de cours
- Prochaines sessions
Public concernĂ©â
Ce cours sâadresse aux dĂ©butants et prĂ©sente les bases de la programmation Kokkos sur CPU et GPU. Vous apprendrez Ă compiler Kokkos et Ă dĂ©velopper un premier programme en utilisant les structures de donnĂ©es fondamentales, les boucles parallĂšles et les rĂ©ductions parallĂšles.
DurĂ©e et modalitĂ©sâ
Cette formation dure 3 jours :
- de 09h30 (accueil Ă partir de 9h) Ă 17h00 (au plus tard)
Elle a lieu uniquement en présentiel dans les locaux de l'IDRIS à Orsay (91).
Assistanceâ
Minimale : 8 personnes ;
Maximale : 20 personnes.
Contexteâ
La portabilitĂ© des performances dĂ©signe la capacitĂ© des programmes et des applications informatiques Ă fonctionner efficacement sur plusieurs plateformes. Les dĂ©veloppeurs visent Ă garantir cette compatibilitĂ© sans compromettre les performances, tout en limitant le code spĂ©cifique Ă chaque plateforme. Cette compĂ©tence est particuliĂšrement recherchĂ©e dans le domaine du calcul haute performance (HPC). Elle reste essentielle face Ă lâĂ©volution rapide des architectures informatiques, qui risque de rendre obsolĂštes les applications actuelles. La portabilitĂ© des performances suppose quâun code source unique reste performant sur de nouvelles architectures. La diversitĂ© croissante du matĂ©riel impose de dĂ©velopper des logiciels compatibles avec un large Ă©ventail de machines afin dâen assurer la pĂ©rennitĂ© et la pertinence.
Kokkos est un modÚle de programmation open source en C++ conçu pour assurer la portabilité et les performances des applications sur l'ensemble des principales plateformes HPC. Kokkos Core fournit des abstractions pour l'exécution des boucles parallÚles et la gestion des données, facilitant le développement d'applications efficaces. Comme backends Kokkos prend actuellement en charge OpenMP pour CPU, et CUDA, HIP, SYCL pour GPU.
Contenu de la formationâ
Les sujets suivants seront abordés lors de la formation :
- Les bases de Kokkos
- Prise en main de Kokkos
- Conteneur de données
- Boucles parallĂšles
- Personnalisation des politiques de boucle
- Réductions parallÚles
- Annotations des fonctionsÂ
- Opérations atomiques
- API algorithmique de Kokkos
- Vectorisation SIMD
- Débogage et profilage
Pour une exĂ©cution efficace des parties pratiques, celles-ci se dĂ©rouleront sur le supercalculateur Jean Zay. Une station de travail avec accĂšs au calculateur de l'IDRIS est mise Ă disposition des apprenants. Une expĂ©rience dans lâutilisation dâun supercalculateur, tout comme un accĂšs prĂ©alable Ă celui-ci, ne sont pas requis.
Support de coursâ
Le matériel de cours en anglais est disponible sur le dépÎt Github du projet CExA:
Pour consulter les dates des prochaines sessions de cette formation, rendez-vous sur la page suivante :
Inscription
Personnel CNRS/EPSCP/université française | Participants externes |
Vous ĂȘtes personnel du CNRS, d'une universitĂ© française ou d'un Ă©tablissement public Ă caractĂšre scientifique, culturel et professionnel (EPSCP) ? Votre inscription est gratuite via notre serveur. | Nos formations sâadressent Ă tous les professionnels des entreprises, organismes publics et particuliers. |