Couvre le cours CS206 sur le parallélisme et la concurrence, y compris la logistique, les matériaux, les séances d'exercices, les laboratoires, les examens et les critères de notation.
Couvre les bases de la programmation parallèle, y compris l'exploitation du parallélisme dans les algorithmes et l'importance d'éviter les conditions de race.
Explore la synchronisation sans verrouillage pour des performances et une évolutivité dans les systèmes distribués, couvrant la génération d'identifiants uniques, les files d'attente de messagerie et les lectures RDMA atomiques.
Couvre l'abstraction des threads dans les systèmes informatiques, en se concentrant sur la concurrence, le parallélisme et la gestion des threads à l'aide de l'API POSIX.
Explore l'importance de la synchronisation sans verrouillage pour obtenir une faible latence dans les systèmes distribués et discute des solutions pratiques pour la génération d'identificateurs uniques et les files d'attente de messagerie.
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.
Couvre les implémentations sans attente d'objets atomiques, en se concentrant sur les compteurs et les instantanés, en discutant des idées clés pour renforcer l'atomicité et la liberté d'attente.
Explore l'élégance et les défis des transactions, y compris les propriétés ACID et les avantages de la mémoire transactionnelle dans la programmation simultanée.
Explore la mémoire transactionnelle pour le contrôle de la concurrence matérielle, en discutant des mécanismes de verrouillage, des compromis de performance et des modifications matérielles.