From ed6f0d1f61a165c2c08faf7b68f1edcb199c3ec1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20El=20Kharroubi?= <michael.el-kharroubi@hesge.ch> Date: Sun, 25 Feb 2024 21:00:25 +0100 Subject: [PATCH] Add skeleton for the whole course --- GPGPU.typ | 4 ++-- Nvidia_STL.typ | 37 +++++++++++++++++++++++++++++++++++++ cpp_basics_for_STL.typ | 35 +++++++++++++++++++++++++++++++++++ 3 files changed, 74 insertions(+), 2 deletions(-) create mode 100644 Nvidia_STL.typ create mode 100644 cpp_basics_for_STL.typ diff --git a/GPGPU.typ b/GPGPU.typ index 20779ce..ae37dbe 100644 --- a/GPGPU.typ +++ b/GPGPU.typ @@ -65,7 +65,7 @@ caption: [NVIDIA CUDA Programming Guide version 3.0 - 2010], ) - #link("https://youtu.be/-P28LKWTzrI")[Partenariat Myth Busters & NVidia] + #link("https://youtu.be/-P28LKWTzrI")[Partenariat Myth Busters & Nvidia] ] #new-section-slide("La programmation sur GPU") @@ -77,7 +77,7 @@ plus populaire de développement GPGPU. CUDA permet d'écrire du code en C/C++ et de le compiler pour qu'il soit exécuté - sur des GPU de NVidia. + sur des GPU de Nvidia. Dans la concurrence, on peut également citer OpenCL (multi-plateforme), ROCm pour AMD ou OneAPI pour Intel. diff --git a/Nvidia_STL.typ b/Nvidia_STL.typ new file mode 100644 index 0000000..fb4c986 --- /dev/null +++ b/Nvidia_STL.typ @@ -0,0 +1,37 @@ +// https://polylux.dev/book/polylux.html +// https://typst.app/docs +#import "@preview/polylux:0.3.1": * +#import themes.metropolis : * + +#show: metropolis-theme.with(aspect-ratio: "16-9", footer: "Parallel STL - HPC 2024") + +#set text(font: "Fira Sans", weight: "light", size: 20pt) +#show math.equation: set text(font: "Fira Math") + +#title-slide( + title: "Algorithmes parallèles STL avec C++ 20", + subtitle: "GPGPU avec les algorithmes STL", + author: "Michaël El Kharroubi", + date: "27.02.2024", + extra: "HPC 2024 - HEPIA", +) + +#new-section-slide("Introduction") + +#slide(title: "Contenu")[ + +] + +#new-section-slide("Le SDK HPC de Nvidia") + +#slide(title: "Le compilateur nvc++")[ + +] + +#new-section-slide("Exemple de parallélisation sur GPU") + +#new-section-slide("Comment passer des données au GPU avec les captures") + +#new-section-slide("Le futur avec C++23 (views et mdspans)") + +#new-section-slide("Questions ?") \ No newline at end of file diff --git a/cpp_basics_for_STL.typ b/cpp_basics_for_STL.typ new file mode 100644 index 0000000..68f6ac3 --- /dev/null +++ b/cpp_basics_for_STL.typ @@ -0,0 +1,35 @@ +// https://polylux.dev/book/polylux.html +// https://typst.app/docs +#import "@preview/polylux:0.3.1": * +#import themes.metropolis : * + +#show: metropolis-theme.with(aspect-ratio: "16-9", footer: "Parallel STL - HPC 2024") + +#set text(font: "Fira Sans", weight: "light", size: 20pt) +#show math.equation: set text(font: "Fira Math") + +#title-slide( + title: "Algorithmes parallèles STL avec C++ 20", + subtitle: "Notions C++ de bases pour les algorithmes STL", + author: "Michaël El Kharroubi", + date: "27.02.2024", + extra: "HPC 2024 - HEPIA", +) + +#new-section-slide("Introduction") + +#slide(title: "Contenu")[ + +] + +#new-section-slide("Itérateurs") + +#new-section-slide("Vecteurs") + +#new-section-slide("Tableaux et Spans") + +#new-section-slide("Closures") + +#new-section-slide("Algorithmes STL") + +#new-section-slide("Questions ?") \ No newline at end of file -- GitLab