HermitCore - A Unikernel for Extreme-Scale Computing
A lightweight unikernel for a scalable and predictable runtime behaviorCopyright: © ACS
The project HermitCore is a novel unikernel targeting a scalable and predictable runtime behavior for HPC and cloud environments. HermitCore could be used a classical unikernel within a virtual machine. In addition, it extends the multi-kernel approach with unikernel features to provide better programmability and scalability for hierarchical systems. By starting HermitCore applications as multi-kernel, cores will be isolated from the Linux system and the applications run bare-metal on these cores. This approach achieves a lower OS jitter and a better scalability. HermitCore applications and the Linux system can communicate via an IP interface (e.g., inter-kernel communication) or via the message passing interface iRCCE, which was initially designed for the Single-Chip Cloud Computer (SCC).
HermitCore provides a comprehensive toolchain, which is based on the GCC and supports C/C++, Fortran, Go, Pthreads, and OpenMP. For an improvement of the performance, Intel’s OpenMP runtime is used instead of GCC’ per default. Therefore, Intel’s C-Compiler could be used as well to build HermitCore applications. Both runtimes are part of HermitCore’s source code.
HermitCore is the result of a research project at RWTH Aachen University and is currently an experimental approach, i.e., not production ready. Please use it carefully.
A first paper, which sketchs the design of HermitCore, was presented at the International Workshop on Runtime and Operating Systems for Supercomputers (ROSS 2016).
Dr. Lankes visited the Systems Software Research Group at Virginia Tech in March, to strenghten the collaboration in the development of the Unikernel HermitCore.
Dr. Lankes presented the talk "HermitCore – A Unikernel for Extreme Scale Computing" at the "International Workshop on Runtime and Operating Systems for Supercomputers (ROSS 2016)", Kyoto, Japan. He presented first results of the project "HermitCore".