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.
Introduit les fondamentaux de l'architecture multiprocesseur, couvrant les serveurs post-Moore, les datacenters durables, la programmation parallèle et l'utilisation du GPU.
Couvre la cohérence des caches dans les systèmes multiprocesseurs et les défis du maintien de la cohérence et de la cohérence dans les processeurs modernes.
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.
Couvre les systèmes de mémoire distribués, l'organisation du cache, les architectures multi-sockets, la cohérence de la mémoire et la conception d'interconnexions sur puce.
Couvre les bases de la concurrence, se concentrant sur les threads et la synchronisation, y compris l'assemblage des threads et les défis de l'exécution non déterministe.
Explore les bases de données parallèles et distribuées, couvrant les architectures, l'optimisation des requêtes, le stockage des données et les transactions distribuées.
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 cohérence du cache dans les systèmes multiprocesseurs, en discutant des protocoles de base et des défis liés aux données partagées entre les processeurs.