Introduction aux Algorithmes C++

Pierre Aubert




Objectif du cours



Ce cours à pour but de montrer comment utiliser les Algorithmes C++ pour :

  • Développer des programmes C++17/C++20/C++23 qui s'exécutent sur CPU (et sur GPU dans un prochain cours)


Prérequis

Compilateur

Ce cours utilisera le compilateur g++ 11 et clang++14 pour les parties C++17/C++20 ou des compilateurs plus récents compatibles C++17/C++20/C++23. Certaines parties C++23 nécessiteront g++ 13 et la libstdc++.so.6.0.32. Si votre OS ne le permet pas, nous utiliserons Fedora 38 via apptainer.

Outils de compilation

Nous utiliserons CMake et Make pour compiler nos programmes et effectuer nos tests de performance.

Outil de gestion des versions

Nous utiliserons Git pour gérer les versions des programmes.

Image Docker

Un environnement de cours complet est disponible à l'adresse https://jupyter.must-dc.cloud/hub/spawn sous le nom Introduction aux Algorithmes C++.
  • L'image Docker est disponible à l'adresse : gitlab-registry.in2p3.fr/cta-lapp/cours/introduction_cpp_algorithms/introduction_cpp_algorithms:latest
  • Une image minimale est disponible à l'adresse : gitlab-registry.in2p3.fr/cta-lapp/cours/introduction_cpp_algorithms/introduction_cpp_algorithms_ci:0.1


Presentations



Correction des exemples

La correction des exemples :