Explore le parallélisme dans la programmation, en mettant l'accent sur les compromis entre la programmabilité et la performance, et introduit la programmation parallèle en mémoire partagée à l'aide d'OpenMP.
Introduit les fondamentaux de l'architecture multiprocesseur, couvrant les serveurs post-Moore, les datacenters durables, la programmation parallèle et l'utilisation du GPU.
Explore les principes de cache mémoire, en mettant l'accent sur la localisation spatiale, l'impact de la latence et les stratégies d'efficacité du cache.
Explore Multi Masters Systems, en discutant des architectures avec plusieurs processeurs, mémoire partagée, exclusion mutuelle et accélérateurs matériels.
Explore la conception de mémoire cache, les succès, les ratés et les politiques d'expulsion dans les systèmes informatiques, en mettant l'accent sur la localité spatiale et temporelle.
Explore l'organisation de la mémoire, la virtualisation, l'attribution dynamique de la mémoire, la pile, le tas et les techniques de virtualisation de la mémoire comme le registre de base et la segmentation.
Couvre les principes de la synchronisation dans le calcul parallèle, en mettant l'accent sur la synchronisation de la mémoire partagée et différentes méthodes comme les verrous et les barrières.
Explore la motivation et les avantages de l'utilisation des GPU pour le calcul, en se concentrant sur leurs performances et leur programmation via CUDA.
Fournit une vue d'ensemble de l'architecture informatique, en se concentrant sur l'architecture de von Neumann et ses composants, y compris les unités de gestion du processeur et de la mémoire.