Skip to Main content Skip to Navigation

Sections atomiques emboîtées avec échappement de processus légers : sémantiques et compilation

Abstract : Transactions are becoming a popular mechanism for parallel and concurrent programming. In most implementations the nesting of transactions is not supported which hinders modularity. Rather than transactions, which are an implementation choice, we consider directly the notion of atomic section. For the sake of modularity with we consider a simple imperative language with fork/join parallelism and lexically scoped nested atomic sections from which threads can escape. In this context, our first contribution is the precise definition of atomicity, well-synchronisation and the proof that the latter implies the strong form of the former. This is done on execution traces without being specific to a language syntax and operational semantics. This first part of our work could be considered as a specification for the design and implementation of such a parallel language. A formalisation of our results in the Coq proof assistant is also available. Our second contribution is a formal definition of the Atomic Fork Join (AFJ) language and its operational semantics. We show that it indeed satisfies the conditions previously defined. The third contribution of our work is a compilation procedure of AFJ programs to programs another language with threads and locks but without atomic sections, named Lock Unlock Fork Join (LUFJ). We study the correctness of the compilation from AFJ to LUFJ.
Complete list of metadata

Cited literature [81 references]  Display  Hide  Download
Contributor : ABES STAR :  Contact
Submitted on : Thursday, September 8, 2016 - 11:09:08 AM
Last modification on : Thursday, May 5, 2022 - 2:42:10 PM
Long-term archiving on: : Friday, December 9, 2016 - 12:33:41 PM


Version validated by the jury (STAR)


  • HAL Id : tel-01362118, version 1


Thomas Pinsard. Sections atomiques emboîtées avec échappement de processus légers : sémantiques et compilation. Algorithme et structure de données [cs.DS]. Université d'Orléans, 2014. Français. ⟨NNT : 2014ORLE2075⟩. ⟨tel-01362118⟩



Record views


Files downloads