Userfault Objects: Transparent Programmable MemoryPosition Paper
The Userfault Object (UFO) framework explores avenues of cooperating with the operating system to use memory in non-traditional ways. We implement a framework that employs the Linux kernel’s userfault mechanism to fill the contents of runtime objects on demand. When an object’s memory is accessed the framework executes a user-defined function that generates a slice of the object. The back-end can generate data from thin air, calculate it from a formula, or retrieve it from persistent storage, the network, or other sources (with or without post-processing). UFOs follow the memory layout of standard runtime objects, so they can be introspected and written to safely. The framework manages the loading and unloading of object segments to ensure that memory is reclaimed as needed and data is never lost. This allows the UFO framework to implement larger-than-memory data structures that never materialize into memory in full. Implementing objects as UFOs also impacts performance, since overhead of populating memory is amortized by loading entire pages of data at a time. The host runtime can also rely on direct memory accesses into userfault object obviating the need for a special dispatch mechanism. We provide a proof-of-concept implementation of the UFO framework for the R language.
Tue 13 JulDisplayed time zone: Brussels, Copenhagen, Madrid, Paris change
| 13:00 - 17:30 | |||
| 13:005m Other | Welcome ICOOOLPS | ||
| 13:0525m Talk | The Two Cultures of Language ImplementationInvited Talk ICOOOLPS Stephen Kell King's College London | ||
| 13:3020m Paper | Naïve Transient Cast Insertion Isn’t (That) BadPaper ICOOOLPS P: Erin Greenwood-Thessman Victoria University of Wellington, Isaac Oscar Gariano Victoria University of Wellington, Richard Roberts Victoria University of Wellington, Stefan Marr University of Kent, Michael Homer Victoria University of Wellington, James Noble Victoria University of WellingtonDOI Pre-print | ||
| 13:5020m Talk | Threaded Code Generation with a Meta-tracing JIT CompilerPosition Paper ICOOOLPS P: Yusuke Izawa Tokyo Institute of Technology, Hidehiko Masuhara Tokyo Institute of Technology, CF Bolz-Tereick , Youyou Cong Tokyo Institute of TechnologyPre-print | ||
| 14:1010m Social Event | Break ICOOOLPS | ||
| 14:2020m Talk | Avoiding Monomorphisation Bottlenecks with Phase-based Splitting ICOOOLPS P: Sophie Kaleba University of Kent, Stefan Marr University of Kent, Richard Jones University of KentPre-print | ||
| 14:4020m Talk | Native Implementation of Mutable Value SemanticsPosition Paper ICOOOLPS P: Dimi Racordon University of Geneva, Switzerland, Denys Shabalin EPFL, Switzerland, Dave Abrahams Google, Dan Zheng Purdue University, Google Brain, Brennan Saeta GooglePre-print | ||
| 15:0020m Talk | An Eclipse OMR-based Garbage Collector for Python ICOOOLPS P: Joannah Nanjekye University of New Brunswick, David Bremner University of New Brunswick, Aleksandar Micic IBM, Canada | ||
| 15:2020m Social Event | Break ICOOOLPS | ||
| 15:4020m Talk | Userfault Objects: Transparent Programmable MemoryPosition Paper ICOOOLPSPre-print | ||
| 16:0020m Talk | The Strange and Wondrous Life of Functions in Ř ICOOOLPS Jan Ječmen , Olivier Flückiger Northeastern University, Sebastián Krynski Czech Technical University in Prague, P: Jan Vitek Northeastern University / Czech Technical UniversityFile Attached | ||
| 16:2020m Talk | Non-Intrusive Migration from Lazy to Eager Evaluation ICOOOLPS P: Aviral Goel Northeastern University, Jan Vitek Northeastern University / Czech Technical University | ||
| 16:4010m Social Event | Break ICOOOLPS | ||
| 16:5020m Talk | A Framework and DSL for Distributed, Energy-constrained, and Time-sensitive Applications ICOOOLPS P: Kyle Liang Carnegie Mellon University, Reese Grimsley CMU, Eve Hu CMU, Edward Andert Arizona State University, Mohammad Khayatian Arizona State University, Aviral Shrivastava Arizona State University, Carlee Joe-Wong CMU, Jonathan Aldrich Carnegie Mellon University, Bob Iannucci CMU | ||
| 17:1020m Talk | Fuel: A Compiler Framework for Safe Memory ManagementPosition Paper ICOOOLPS Dimi Racordon University of Geneva, Switzerland, P: Aurélien Coet University of Geneva, Switzerland, Didier Buchs University of Geneva, SwitzerlandPre-print | ||

