Génial sans verrouillage
Une collection de ressources sur la programmation sans attente et sans verrouillage.
Ressource encore meilleure de MattPD : liens C++ : atomiques, sans verrouillage, modèle de mémoire.
Bibliothèques
- Boost.Lockfree - Boostez les structures de données sans verrouillage.
- ConcurrencyKit - Primitives de concurrence.
- crossbeam - Bibliothèque Rust pour la programmation simultanée.
- Folly - Bibliothèque open source Facebook (a une bonne implémentation de la file d'attente MPMC).
- Junction - Structures de données concurrentes en C++.
- MPMCQueue - Une file d'attente sans verrouillage multi-producteurs et multi-consommateurs délimitée écrite en C++11.
- SPSCQueue - Une file d'attente délimitée à producteur unique, à consommateur unique, sans attente et sans verrouillage, écrite en C++11.
- Seqlock - Implémentation de Seqlock en C++.
- Userspace RCU - liburcu est une bibliothèque userspace RCU (lecture-copie-mise à jour).
- libcds - Une bibliothèque C++ de structures de données simultanées.
- liblfds - bibliothèque de structures de données portable, sans licence et sans verrouillage, écrite en C.
- xenium - Une bibliothèque C++ fournissant diverses structures de données et schémas de récupération simultanés.
Sites Web
- 1024cores - Site Web de Dmitry Vyukov sur la programmation sans verrouillage.
- Perturbateur LMAX
- Wikipédia : algorithme non bloquant
- Wikipédia : lecture-copie-mise à jour
- Wikipédia : Seqlock
Blogues
- Concurrency Freaks - Un site Web dédié aux algorithmes et modèles simultanés.
- Dan Luu - Beaucoup d'informations sur l'architecture informatique moderne.
- Verrouillage dans Webkit
- Sympathie mécanique
- Paul E. McKenney
- Pressing sur la programmation
- Sutter's Mill - Herb Sutter sur le développement de logiciels.
- Paul Khuong
Livres
- Paul E. McKenney . La programmation parallèle est-elle difficile et, si oui, que pouvez-vous faire pour y remédier ?
- Maurice Herlihy et Nir Shavit . L'art de la programmation multiprocesseur
Papiers
- Un didacticiel d'introduction aux modèles de mémoire détendus ARM et POWER
- Paul E. McKenney . Barrières de mémoire : une vue matérielle pour les pirates informatiques.
- Algorithmes de file d'attente simultanés non bloquants et bloquants simples, rapides et pratiques - The Michael - Scott Queue
- Ulrich Drepper . Ce que tout programmeur devrait savoir sur la mémoire
- x86-TSO : un modèle de programmeur rigoureux et utilisable pour les multiprocesseurs x86
Pourparlers
- CppCon 2014 : Herb Sutter « Programmation sans verrouillage (ou jonglerie avec des lames de rasoir), partie I »
- CppCon 2014 : Herb Sutter « Programmation sans verrouillage (ou jonglerie avec des lames de rasoir), partie II »
- CppCon 2015 : Fedor Pikus PARTIE 1 « Live Lock-Free ou Deadlock (Programmation pratique sans verrouillage) »
- CppCon 2015 : Fedor Pikus PARTIE 2 "Live Lock-Free ou Deadlock (Programmation pratique sans verrouillage)"
- CppCon 2015 : Michael Wong « Modèle atomique et mémoire C++11/14/17... »
- CppCon 2015 : Paul E. McKenney « C++ Atomics »
- CppCon 2014 : Tony Van Eerd « Le sans verrouillage par l'exemple »
- CppCon 2016 : Fedor Pikus « La vitesse de la concurrence : le verrouillage sans verrouillage est-il plus rapide ?
- CppCon 2016 : Hans Boehm « Utiliser correctement les atomes C++ faiblement ordonnés »
- CppCon 2017 : Fedor Pikus « L'atomique C++, du basique à l'avancé. Que font-ils réellement ?
- CppCon 2017 : Fedor Pikus « Lire, copier, mettre à jour, et alors ? RCU pour les programmeurs non-noyau »
- CppCon 2017 : P. McKenney, M. Michael et M. Wong « La programmation parallèle est-elle encore difficile ? PARTIE 1 sur 2 »
- CppCon 2017 : P. McKenney, M. Michael et M. Wong « La programmation parallèle est-elle encore difficile ? PARTIE 2 sur 2 »
- CppCon 2018 : « Le paysage et le nouvel avenir passionnant de la récupération sûre pour la haute performance »
- C++ et au-delà 2012 : Herb Sutter - armes atomiques<>, 1 sur 2
- C++ et au-delà 2012 : Herb Sutter - armes atomiques<>, 2 sur 2
- "Aeron : messagerie open source hautes performances" par Martin Thompson
- Aventures avec la programmation simultanée en Java : une quête d'une latence prévisible - Martin Thompson
- Comprendre le perturbateur, guide du débutant sur la concurrence hardcore - Trisha Gee et Mike Barker
À propos
Cette liste a été compilée par Erik Rigtorp <[email protected]>.