The multikernel: a new OS architecture for scalable multicore systems
By Andrew Baumann, P. Barham, Pierre-Évariste Dagand, T. Harris, Rebecca Isaacs, Simon Peter, Timothy Roscoe, Adrian Schüpbach, Akhilesh Singhania. 2009
886 citations recorded by the source corpus.
Subfields: Computer Networks and Communications, Hardware and Architecture, Information Systems, ML Systems & Hardware
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Computer Networks and Communications
- Hari Balakrishnan
- Robert Morris
- M. Frans Kaashoek
- Arvind Krishnamurthy
- Parthasarathy Ranganathan
- Christos Kozyrakis
- Michael Isard
- T. Anderson
In Hardware and Architecture
- Hari Balakrishnan
- Parthasarathy Ranganathan
- Christos Kozyrakis
- Muli Ben-Yehuda
- Arvind Krishnamurthy
- Michael Factor
- T. Anderson
- Abel Gordon
In Information Systems
- Parthasarathy Ranganathan
- Christos Kozyrakis
- Michael Isard
- Muli Ben-Yehuda
- Arvind Krishnamurthy
- Michael Factor
- Hari Balakrishnan
- T. Anderson
In ML Systems & Hardware
- Christos Kozyrakis
- Parthasarathy Ranganathan
- Arvind Krishnamurthy
- Hari Balakrishnan
- David Wentzlaff
- Sanjay Ghemawat
- Michael Isard
- Anant Agarwal
Citations in the corpus
- Pathways: Asynchronous Distributed Dataflow for ML (2022, background): “For example, general-purpose virtualization enables cloud applications to efficiently share multi-tenant resources with performance isolation (Angel et al., 2014; Wentzlaff et al., 2010; Shahrad and Wentzlaff, 2016; Baumann et al., 2009), but cloud providers dedicate accelerators to individual users.”
- The Turtles Project: Design and Implementation of Nested Virtualization (2010, background): “Dedicating cores to guests could reduce cache pollution [7, 45, 46] and increase performance.”
- Traffic management: a holistic approach to memory placement on NUMA systems (2013, background): “…replicated between memory nodes, and a thread needing to access data in a different domain than its own either migrates to the target domain or asks the thread running in that domain to perform the work on its behalf, instead of fetching the data over the memory channels [4, 8, 14, 23, 25, 28, 29].”
- Pegasus: Coordinated Scheduling for Virtualized Accelerator-based Systems (2011, background): “Multikernel [4] and Helios [26] change system structures for multicores, advocating distributed system models and satellite kernels for processor groups, respectively.”
- Arrakis (2014, methodology): “The Arrakis operating system is based on the Barrelfish [Baumann et al. 2009] multicore OS code base.6 We added 33,786 lines of code to the Barrelfish code base in order to 6http://www.barrelfish.org/.”
- An operating system for multicore and clouds: mechanisms and implementation (2010, background): “Also, fos is tackling many of the same problems as Barrelfish [8] but fos is focusing more on how to parallelize the system servers as well as addresses the scalability on chip and in the cloud.”
- IX: A Protected Dataplane Operating System for High Throughput and Low Latency (2014, methodology): “On the other hand, Arrakis uses Barrelfish as the control plane [6] and includes support for IOMMUs and SR-IOV.”
- Shenango: Achieving High CPU Efficiency for Latency-sensitive Datacenter Workloads (2019, background): “IX and eRPC process packets in batches and may provide higher throughput than Shenango for workloads with short, uniform service times and many connections to balance load across cores.”
- An Analysis of Linux Scalability to Many Cores (2010, background): “[11, 15, 53]) could apply equally well to Linux, improving its absolute performance and benefiting certain applications.”
- NOVA: a microhypervisor-based secure virtualization architecture (2010, methodology): “Inspired by EROS [32], recent microkernels introduced capabilities for controlling access to kernel objects [3, 19, 21, 33].”
- Unikernels: library operating systems for the cloud (2013, positive): “One early decision decision we took is to adopt the mul-tikernel [15] philosophy of running a VM per core, and the single-threaded OCaml runtime has fast sequential performance that is ideal for this need.”