diff --git a/Nvidia_STL.typ b/Nvidia_STL.typ
index e1fce06d683898d59383cb1694a2dee6ffdd0f75..cc0690fea74fde896c381368c07d4cbad3a73832 100644
--- a/Nvidia_STL.typ
+++ b/Nvidia_STL.typ
@@ -199,8 +199,55 @@ std::for_each(std::execution::par_unseq,
 ```
 ]
 
+#slide(
+  title: "Le compilateur ne peut pas tout copier",
+)[
+Attardons nous sur cet extrait de code `[device_v = v.data(), cst]`
+
+Le compilateur ne va pas simplement copier le pointeur `v.data()`, il va
+remonter à l'allocation mémoire de la zone pointée et va s'occuper de la rendre
+accessible depuis le device.
+
+Par conséquent, il n'est pas possible d'utiliser de la mémoire allouée par du
+code qui n'aurait pas été compilé par nvc++ (ex: une librairie paratagée comme
+OpenCV).
+
+Le compilateur s'appuie principalement sur la CUDA Unified memory. Pour plus
+d'information à ce sujet, je vous recommande ce billet de blog :
+#link("https://developer.nvidia.com/blog/unified-memory-cuda-beginners")
+]
+
 #new-section-slide("Le futur avec C++23 (views et mdspans)")
 
-#new-section-slide("Notions à retenir")
+#slide(
+  title: "",
+)[
+  La prochaine étape majeure dans ce paradigme apparaît avec C++23. Depuis C++ 20,
+  les spans et les views ont fait leur apparition.
 
+  Les views sont une forme d'itérateurs à évaluation paresseuse.
+
+  Dans C++23, on voit apparaître de nouvelles méthodes pour combiner les views
+  comme par exemple le produit cartésien pour générer les indices d'une matrice.
+
+  Et la grande nouveauté, les mdspans qui permettent de gérer des structures de
+  données multidimensionnelles.
+]
+
+#new-section-slide("Exemple de code C++23 et notions à retenir")
+
+#slide(
+  title: "Notions essentielles à retenir",
+)[
+  - On parallélise notre code avec le compilateur nvc++ du SDK HPC de Nvidia
+    - Il faut passer le paramètre stdpar au compilateur pour lui dire comment
+      paralléliser (cpu, gpu).
+  - Pour paralléliser un algorithme STL, il faut lui passer une politique
+    d'exécution
+  - Connaître et comprendre la différence entre les 4 politiques d'exécution
+  - On ne peut pas passer des données du _host_ par référence au _device_
+  - On capture les zones mémoire par copie pour les passer au _device_
+  - On ne peut pas capturer de la mémoire allouée par un code qui n'a pas été
+    compilé par nvc++.
+]
 #new-section-slide("Questions ?")
\ No newline at end of file