L'École Gray Scott

L'École Gray Scott

Notes de terrain d'une école de calcul haute performance de neuf jours à la CINERI — optimiser une simulation de réaction-diffusion, du cœur CPU au GPU.

De quoi il s'agit

Ce sont des notes de terrain de la Gray Scott School 2026 à la CINERI, une école de neuf jours sur le calcul haute performance. Chaque jour reprend le même programme — une simulation de réaction-diffusion de Gray-Scott — et le fait tourner plus vite sur davantage de la machine, d'un seul cœur CPU jusqu'au GPU.

Le sujet ne change jamais. Ce qui change, c'est la part du matériel qu'on apprend à exploiter.

Le fil rouge

Une seule méthode traverse les neuf jours, quel que soit le langage ou l'accélérateur :

  1. Mesurer avant d'optimiser — ne jamais se fier à l'intuition avant d'avoir chronométré.
  2. Trouver le facteur limitant — le code est-il compute-bound ou memory-bound ?
  3. Exploiter le matériel — vectorisation dans un cœur, parallélisme entre cœurs, puis le GPU.

Les neuf jours

JourSujet
Jour 1 — FondationsCPU, compilation, SIMD, concurrence, memory- vs compute-bound
Jour 2 — C++ sur CPUdata layout, vectorisation, blocking cache, TBB
Jour 3 — Fortran sur CPUFortran moderne, stencils, précision flottante
Jour 4 — Kokkos sur CPUune source, plusieurs backends
Jour 5 — Python sur CPUNumPy, Numba, JAX
Jour 6 — SIMD avec EVE + architecture GPUSIMD explicite et portable
Jour 7 — Python sur GPUCuPy, cuNumeric, JAX
Jour 8 — Fortran sur GPUdo concurrent, OpenACC, OpenMP target
Jour 9 — Kokkos sur GPUnoyaux portables sur l'accélérateur

À la CINERI, avec l'équipe du LAPP. Le cours de référence est sur cta-lapp.pages.in2p3.fr.

Copyright © 2026