Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Orca: GC and Type System Co-design for Actor Languages
Microsoft Research, UK.
Imperial College London, UK.
Imperial College London, UK.
Uppsala University, Disciplinary Domain of Science and Technology, Mathematics and Computer Science, Department of Information Technology, Computing Science.
Show others and affiliations
2017 (English)In: Proceedings of the ACM on Programming Languages, ISSN 2475-1421, Vol. 1, no OOPSLA, p. 1-28, article id 72Article in journal (Refereed) Published
Abstract [en]

ORCA is a concurrent and parallel garbage collector for actor programs, which does not require any STW steps, or synchronization mechanisms, and that has been designed to support zero-copy message passing and sharing of mutable data. ORCA is part of a runtime for actor-based languages, which was co-designed with the Pony programming language, and in particular, with its data race free type system. By co-designing an actor language with its runtime, it was possible to exploit certain language properties in order to optimize performance of garbage collection. Namely, ORCA relies on the guarantees of absence of race conditions in order to avoid read/write barriers, and it leverages the actor message passing, for synchronization among actors.

In this paper we briefly describe Pony and its type system. We use pseudo-code in order to introduce how ORCA allocates and deallocates objects, how it shares mutable data without requiring barriers upon data mutation, and how can immutability be used to further optimize garbage collection. Moreover, we discuss the advantages of co-designing an actor language with its runtime, and we demonstrate that ORCA can be implemented in a performant and scalable way through a set of micro-benchmarks, including a comparison with other well-known collectors.

Place, publisher, year, edition, pages
ACM , 2017. Vol. 1, no OOPSLA, p. 1-28, article id 72
Keywords [en]
actors, messages
National Category
Computer Systems
Identifiers
URN: urn:nbn:se:uu:diva-334694DOI: 10.1145/3133896OAI: oai:DiVA.org:uu-334694DiVA, id: diva2:1160319
Projects
UPMARCAvailable from: 2017-11-26 Created: 2017-11-26 Last updated: 2017-11-27Bibliographically approved

Open Access in DiVA

fulltext(1041 kB)124 downloads
File information
File name FULLTEXT01.pdfFile size 1041 kBChecksum SHA-512
bd73c2162d19807a2a1d6cc13aad35e9152f9abb6f2f82a9ff4712bf1790505d5b38f4153204450cac4e70cb70a58a0a14c0773c613d2213f9104faf99fea21d
Type fulltextMimetype application/pdf

Other links

Publisher's full texthttp://doi.acm.org/10.1145/3133896

Search in DiVA

By author/editor
Yang, Albert MingkunWrigstad, Tobias
By organisation
Computing Science
Computer Systems

Search outside of DiVA

GoogleGoogle Scholar
Total: 124 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

doi
urn-nbn

Altmetric score

doi
urn-nbn
Total: 114 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf