当前位置: X-MOL 学术arXiv.cs.PL › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Objective Caml for Multicore Architectures
arXiv - CS - Programming Languages Pub Date : 2020-06-10 , DOI: arxiv-2006.05862
Mathias Bourgoin, Benjamin Canou, Emmanuel Chailloux, Adrien Jonquet and Philippe Wang

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.

中文翻译:

用于多核架构的 Objective Caml

Objective Caml 是 ML 家族语言的一种著名方言。它以其作为编译型编程语言的性能而闻名,特别是由于其增量自动内存收集。但是,由于历史原因,后者是为单核处理器构建的。一个结果是运行时库假设一次运行的线程实际上不超过一个,这允许对单核架构进行许多优化:很少的线程互斥锁足以防止一次运行多个线程。这使得内存分配和收集变得非常容易。它的构建方式使其无法利用现在广泛使用的多核 CPU 架构。本文介绍了我们对移除 Objective Caml 的垃圾收集器和设计“Stop-The-World Stop&”的反馈。
更新日期:2020-06-11
down
wechat
bug