Beyond Processor-centric Operating Systems

By the end of the decade, computing designs will shift from a processor-centric architecture to a memory-centric architecture. At rack scale, we can expect a large pool of non-volatile memory (NVM) that will be accessed by heterogeneous and decentralized compute resources [3, 17]. Such memory-centric architectures will present challenges that today's processor-centric OSes may not be able to address. In this paper, we describe the characteristics and consequences of memory-centric architectures and propose a memory-centric OS design that moves traditional OS functionality outside of the compute node and closer to memory.

[1]  Krste Asanovic,et al.  FireBox: A Hardware Building Block for 2020 Warehouse-Scale Computers , 2014 .

[2]  Dejan S. Milojicic,et al.  Optimizing Checkpoints Using NVM as Virtual Memory , 2013, 2013 IEEE 27th International Symposium on Parallel and Distributed Processing.

[3]  Karthikeyan Sankaralingam,et al.  Dark Silicon and the End of Multicore Scaling , 2012, IEEE Micro.

[4]  Christoforos E. Kozyrakis,et al.  A case for intelligent RAM , 1997, IEEE Micro.

[5]  Julie Silver Chapter 3 – About the Machine , 2004 .

[6]  G. Seroussi,et al.  Sidestep: Co-designed shiftable memory & software , 2012 .

[7]  Dejan S. Milojicic,et al.  Not Your Parents' Physical Address Space , 2015, HotOS.

[8]  Chin-Long Chen,et al.  Error-Correcting Codes for Semiconductor Memory Applications: A State-of-the-Art Review , 1984, IBM J. Res. Dev..

[9]  Yuan Xie,et al.  Modeling, Architecture, and Applications for Emerging Memory Technologies , 2011, IEEE Design & Test of Computers.

[10]  Alan Messer,et al.  Global memory management for a multi computer system , 2000 .

[11]  Parthasarathy Ranganathan,et al.  From Microprocessors to Nanostores: Rethinking Data-Centric Systems , 2011, Computer.

[12]  David Gelernter,et al.  Generative communication in Linda , 1985, TOPL.

[13]  Christoforos E. Kozyrakis,et al.  IX: A Protected Dataplane Operating System for High Throughput and Low Latency , 2014, OSDI.

[14]  Terence Kelly,et al.  Failure-atomic msync(): a simple and efficient mechanism for preserving the integrity of durable data , 2013, EuroSys '13.

[15]  Michael M. Swift,et al.  Efficient virtual memory for big memory servers , 2013, ISCA.

[16]  Babak Falsafi,et al.  Scale-out NUMA , 2014, ASPLOS.

[17]  Krste Asanovic,et al.  Mondrian memory protection , 2002, ASPLOS X.

[18]  Norman P. Jouppi,et al.  FREE-p: Protecting non-volatile memory against both hard and soft errors , 2011, 2011 IEEE 17th International Symposium on High Performance Computer Architecture.

[19]  Jung Ho Ahn,et al.  HyperX: topology, routing, and packaging of efficient large-scale networks , 2009, Proceedings of the Conference on High Performance Computing Networking, Storage and Analysis.

[20]  Norman C. Hutchinson,et al.  Deciding when to forget in the Elephant file system , 1999, SOSP.

[21]  Alan Messer,et al.  Increasing relevance of memory hardware errors: a case for recoverable programming models , 2000, EW 9.

[22]  Mahadev Konar,et al.  ZooKeeper: Wait-free Coordination for Internet-scale Systems , 2010, USENIX ATC.

[23]  Timothy Roscoe,et al.  Arrakis , 2014, OSDI.

[24]  D. Stewart,et al.  The missing memristor found , 2008, Nature.

[25]  Luis Ceze,et al.  Operating System Implications of Fast, Cheap, Non-Volatile Memory , 2011, HotOS.

[26]  Timothy Mattson,et al.  A 48-Core IA-32 message-passing processor with DVFS in 45nm CMOS , 2010, 2010 IEEE International Solid-State Circuits Conference - (ISSCC).

[27]  Peter G. Neumann,et al.  The CHERI capability model: Revisiting RISC in an age of risk , 2014, 2014 ACM/IEEE 41st International Symposium on Computer Architecture (ISCA).

[28]  Mendel Rosenblum,et al.  It's Time for Low Latency , 2011, HotOS.

[29]  Hans-Juergen Boehm,et al.  Atlas: leveraging locks for non-volatile memory consistency , 2014, OOPSLA.

[30]  Andreas Reuter,et al.  Transaction Processing: Concepts and Techniques , 1992 .

[31]  Emmett Witchel,et al.  Operating Systems Must Support GPU Abstractions , 2011, HotOS.

[32]  Miguel Castro,et al.  Fast byte-granularity software fault isolation , 2009, SOSP '09.