
Formation : Introduction à KOKKOS (programmation CPU et GPU)
Responsable : Juan José Silva Cuevas
Intervenants : Paul Gannay, Adrien Taberner, 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.
Ce cours est organisé en colllaboration avec la Maison de la Simulation et le projet CExA.
- 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.
Pour consulter les dates des prochaines sessions de cette formation, rendez-vous sur la page suivante :
Inscription
L'inscription est gratuite mais obligatoire sur notre serveur Web des formations.
La formation Kokkos est gratuite pour toutes et tous, quel que soit l’employeur. Le portail d’inscription peut toutefois afficher des conditions générales réservant la gratuité au personnel du CNRS et des universités françaises, en orientant les autres participants vers CNRS Formation Entreprises. Ces conditions ne s’appliquent pas à cette formation.
S'inscrire à cette formation