OC4MC: Objective Caml for Multicore Architectures - Archive ouverte HAL
Communication Dans Un Congrès Année : 2009

OC4MC: Objective Caml for Multicore Architectures

Mathias Bourgoin
Benjamin Canou
  • Fonction : Auteur
  • PersonId : 854249
Adrien Jonquet
  • Fonction : Auteur
  • PersonId : 872845
Philippe Wang
  • Fonction : Auteur
  • PersonId : 872844

Résumé

Objective Caml is a famous dialect of the ML family languages. It is well-known for its performance as a compiled programming language, notably thanks to its incremental generational automatic memory collection. However, for historical reasons, the latter was built for monocore processors. One consequence is the runtime library assumes there is effectively no more than one thread running at a time, which allows many optimisations for monocore architectures: very few thread mutexes are sufficient to prevent more than a single thread to run at a time. This makes memory allocation and collection quite easier. The way it was built makes it not possible to take advantage of now widespread multicore CPU architectures. This paper presents our feedback on removing Objective Caml's garbage collector and designing a "Stop-The-World Stop&Copy" garbage collector to permit threads to take advantage of multicore architectures.
Fichier non déposé

Dates et versions

hal-00641009 , version 1 (14-11-2011)

Identifiants

  • HAL Id : hal-00641009 , version 1

Citer

Mathias Bourgoin, Benjamin Canou, Emmanuel Chailloux, Adrien Jonquet, Philippe Wang. OC4MC: Objective Caml for Multicore Architectures. 21st Symposium on Implementation and Application of Functional Languages, Sep 2009, South Orange, United States. pp.24-41. ⟨hal-00641009⟩
186 Consultations
0 Téléchargements

Partager

More