Exokernel: an operating system architecture for application-level resource management
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Analysis of microbenchmarks for performance tuning of clusters
CLUSTER '04 Proceedings of the 2004 IEEE International Conference on Cluster Computing
Cell broadband engine architecture and its first implementation: a performance view
IBM Journal of Research and Development
The multikernel: a new OS architecture for scalable multicore systems
Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles
Helios: heterogeneous multiprocessing with satellite kernels
Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles
An operating system for multicore and clouds: mechanisms and implementation
Proceedings of the 1st ACM symposium on Cloud computing
Tessellation: space-time partitioning in a manycore client OS
HotPar'09 Proceedings of the First USENIX conference on Hot topics in parallelism
An analysis of Linux scalability to many cores
OSDI'10 Proceedings of the 9th USENIX conference on Operating systems design and implementation
FlexSC: flexible system call scheduling with exception-less system calls
OSDI'10 Proceedings of the 9th USENIX conference on Operating systems design and implementation
Application-Tailored I/O with Streamline
ACM Transactions on Computer Systems (TOCS)
Venti: a new approach to archival storage
FAST'02 Proceedings of the 1st USENIX conference on File and storage technologies
Hi-index | 0.00 |
Virtualized cloud computing provides lower costs, easier system management and lower energy consumption. However high performance tasks are ill-suited for traditional clouds since commodity operating systems and hypervisors add cascading jitter to computation, slowing applications to a crawl. This paper presents an overview of NIX, an operating system for manycore central processing units (CPUs) which addresses the challenges of running high performance applications on commodity cloud systems. NIX features a heterogeneous CPU model and uses a shared address space. NIX has been influenced by our work on Blue Gene and more traditional clusters. NIX partitions cores by function: timesharing cores (TCs); application cores (ACs); and kernel cores (KCs). One or more TCs run traditional applications. KCs are optional, running kernel functions on demand. ACs are also optional, devoted to running an application with no interrupts; not even clock interrupts. Unlike traditional kernels, functions are not static: the number of TCs, KCs, and ACs can change as needed. Also unlike traditional systems, applications can communicate by sending messages to the TC kernel, instead of system call traps. These messages are “active” taking advantage of the shared-memory nature of manycore CPUs to pass pointers to data and code to coordinate cores. © 2012 Alcatel-Lucent. © 2012 Wiley Periodicals, Inc.