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 motivation et les avantages de l'utilisation des GPU pour le calcul, en se concentrant sur leurs performances et leur programmation via CUDA.
Couvre l'évolution de l'informatique, du droit de Moore au multicores, la recherche sur la parallélisation du code Lisp, les expériences à UC Berkeley et Microsoft Research, et les idées sur l'informatique en nuage et la gestion du corps professoral.
Couvre la transition de la programmation mono-thread à la programmation multithread, en se concentrant sur les modèles de mémoire et les problèmes de cohérence.
Explore simulant des modèles de réseau neuronal à grande échelle et optimisant l'efficacité de la mémoire dans les simulations neuronales à l'aide de NEURON et de CoreNEURON.
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.
Couvre l'architecture multiprocesseurs, l'informatique durable, l'impact de la formation sur les modèles d'IA et les principes fondamentaux de la programmation parallèle.
Couvre l'évolution et les défis des multiprocesseurs, en mettant l'accent sur l'efficacité énergétique, la programmation parallèle, la cohérence du cache et le rôle des GPU.
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.
Couvre l'architecture multiprocesseur avancée, discutant de la logistique des cours, des composants, du classement et des tendances des systèmes informatiques 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.
Explore les principes de synchronisation à l'aide de verrous et de barrières, en mettant l'accent sur des implémentations matérielles efficaces et des mécanismes de coordination tels qu'OpenMP.
Couvre les bases de la programmation parallèle, y compris la concurrence, les formes de parallélisme, la synchronisation et les modèles de programmation tels que PThreads et OpenMP.