Implantations
Nombre d'implantations de STM ont été publiées (avec de grandes variations de qualité et de stabilité), beaucoup sous des licences libérales :
- (en) La bibliothèque STM décrite dans « Composable Memory Transactions », fait partie de la distribution du Glasgow Haskell Compiler standard.
- (en) SXM, une implantation des transactions par Microsoft Research. Documentation, Download page.
- (en) Several implementations by Tim Harris&Keir Fraser, fondê sur les idêes de se papier « Language Support for Lightweight Transactions », « Practical Lock Freedom », un travail non encore publié.
- (en) The Lightweight Transaction Library (LibLTX), une implantation en C par Robert Ennals se concentrant sur l'efficacité et basée sur ses papiers « Software Transactional Memory Should Not Be Obstruction-Free » et « Cache Sensitive Software Transactional Memory ».
- (en) LibCMT, une implantation open source en C de Duilio Protti fondée sur « Composable Memory Transactions ». L'implantation inclut aussi un binding C#.
- (en) RSTM Une équipe dirigée par Michael Scott a écrit cette STM. Mike Spear, Virendra Marathe, et Chris Heriot ont écrit le code, avec des contributions de Athul Acharya, David Eisenstat, Bill Scherer, Arrvindh Shriraman, et Vinod Sivasankaran.
- (en) Une implantation de AtomJava par le groupe de recherche SCAT.
- (en) TARIFA est un prototype qui ajoute le mot-clef « atomic » au C/C++ en instrumentant l'assembleur généré par le compilateur.
- Une STM pour Perl 6 a été implanté dans Pugs via la bibliothèque STM de Glasgow Haskell Compiler. Dans Parrot, une STM a été implanté en C et est accessible via des opcodes de l'assembleur imcc.
- (en) jstm est une implantation open source en java, avec des extensions spéciales comme la réplication d'objets entre machines Documentation