CHPS0803 - Architecture des processeurs et optimisation

Retour au parcours Retour à la liste des EC
  • Équipe pédagogique

    • Responsables

    • FOYER Clément
      Département : Informatique (UFR SEN)
  • Volume horaire

  • Nature CMTP Total
    Durée 12h18h30h
  • Modalités de contrôle des connaissances (MCC)

  • Epreuves Nature ProjetOral Total
    Durée 0h20
    Cas général 1ère session 5050 100%
    2nd session 5050 100%
    Dispense contrôle continu 1ère session 5050 100%
    2nd session 5050 100%
  • Modalités de contrôle des connaissances (MCC)

  • Cas général

  • Nature Durée 1ère session 2ème session
    Projet 50% 50%
    Oral 0h20 50% 50%
  • Dispense contrôle continu

  • Nature Durée 1ère session 2ème session
    Projet 50% 50%
    Oral 0h20 50% 50%
  • Objectifs

  • Connaissances sur le fonctionnement interne des processeurs, et prise en compte pour le développement de programmes efficaces

  • Compétences spécifiques visées

    • Connaissance des architectures scalaires et superscalaires des processeurs
    • Connaissance des mémoires caches et de leur fonctionnement
    • Connaissance des spécificités des architectures x86 (SMT, AVX, ...)
    • Connaissance des métriques d’optimisation (roofline model, taux de vectorisation)
  • Compétences générales visées

    • Connaissance avancée des processeurs et de leur fonctionnement interne, permettant leur meilleure exploitation dans un objectif de calcul haute performance
    • Connaissance et pratique des techniques d’optimisation classiques (blocking, double buffering, vectorisation)
  • Connaissances requises

  • Programmation C/C++. Programmation parallèle (mémoire partagée / mémoire distribuée).

  • Programme

    • Découverte des architectures des processeurs (ARM, x86) et des jeux d’instructions spécifiques
    • Mise en pratique des méthodes d’optimisation (résolution des partages de données, utilisation de la vectorisation, déroulage de boucles, double buffering, utilisation de halos, algorithmes bloqués)