CSC 8610 – Introduction au traitement d'image

Portail informatique

Présentation

Le Cours CSC8610 – Introduction au traitement d'image est un cours de troisième année de la VAP MAIA à Télécom SudParis.

  • Sujet
    Contenu
    Notions clefs
  • CI1 et CI2
    Programmation
    • Présentation du cours : slides
    • Programmation en C : suivre une introduction en ligne, par exemple ici
    • Faire des exercices de programmation C, par exemple ici
    • Les bases de la programmation C
    • Points communs avec Java
    • Les types et leur taille en mémoire
    • Les pointeurs, les tableaux et les String
    • Allocation de mémoire
    • Structurer un projet en C
  • CI3
    Premier programme en CUDA
    • Motivation programmation GPU
    • Mouvement de données
    • Écriture d'un kernel simple
    • Définition block/grid/threads
  • CI4
    Architecture d'un GPU et synchronisation
    • Les patterns de communication : gather, scatter, stencil, transpose
    • Architecture d'un GPU et modèles de programmation
    • SMs, threads, blocks, ordering
    • Synchronisation
    • Mémoire locale, globale, partagée, accès atomiques
    • Programmation GPU efficace : accès continus en mémoire, rapidité de la mémoire
  • CI5
    Reduce et Scan
    • Step and work complexity
    • Reduce on a GPU
    • Shared memory
    • Scan operation
    • Hellis-Steele algorithme
    • Blelloch algorithme
    • Histogrammes
  • CI6
    Compact et Scan
    • Compact
    • Allocate
    • Segmented scan
    • Algorithmes de tri
  • CI7
    Optimisation sur GPU
    • Principles of efficient GPU programming
    • APOD
    • Bande passant maximale théorique
    • Coalescing
    • La loi de Little
    • Occupancy
    • Warp
    • Thread divergence
    • Streams
  • CI8
    Motifs de calculs parallèles
    • Dense body
    • Sparse matrix - vector
    • BFS
    • List ranking
    • Hash table
CM : Cours Magistral (lecture only)       CI : Cours Intégré (lecture and lab)