A Stackless Runtime Environment for a Pi-calculus - Archive ouverte HAL Accéder directement au contenu
Communication Dans Un Congrès Année : 2006

A Stackless Runtime Environment for a Pi-calculus

Samuel Hym

Résumé

The Pi-calculus is a formalism to model and reason about highly concurrent and dynamic systems. Most of the expressive power of the language comes from the ability to pass communication channels among concurrent processes, as any other value. We present in this paper the CubeVM, an interpreter architecture for an applied variant of the Pi-calculus, focusing on its operational semantics. The main characteristic of the CubeVM comes from its stackless architecture. We show, in a formal way, that the resource management model inside the VM may be greatly simplified without the need for nested stack frames. This is particularly true for the garbage collection of processes and channels. The proposed GC, based on a reference counting scheme, is highly concurrent and, most interestingly, does automatically detect and reclaim cycles of disabled processes. We also address the main performance issues raised by the fine-grained concurrency model of the Pi-calculus. We introduce the reactive variant of the semantics that allows, when applicable, to increase the performance drastically by bypassing the scheduler. We define the language subset of processes in so called chain-reaction forms for which the sequential semantics can be proved statically. We illustrate the expressive power and performance gains of such chain-reactions with examples of functional, dataflow and object-oriented systems. Encodings for the pure Pi-calculus are also demonstrated.

Dates et versions

hal-00140653 , version 1 (08-04-2007)

Identifiants

Citer

Frédéric Peschanski, Samuel Hym. A Stackless Runtime Environment for a Pi-calculus. VEE 2006 - Second International Conference on Virtual Execution Environments, Jun 2006, Ottawa, Canada. pp.57 - 67, ⟨10.1145/1134760.1134770⟩. ⟨hal-00140653⟩
63 Consultations
0 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More