Kyle C. Hale, Assistant Professor
Email: khale [at] cs [dot] iit [dot] edu
Office: SB 237F
Email: arizvi1 [at] hawk [dot] iit [dot] edu
Email: cliu115 [at] hawk [dot] iit [dot] edu
Hybrid Runtimes are a combination of a parallel runtime and a traditional OS kernel layer called an Aerokernel, which is similar to a library OS, but fully implemented in kernel-mode. This mash-up of the runtime and OS kernel allows the runtime to choose its own abstractions and access privileged hardware which is typically only accessed at ring 0. Hybrid runtimes are a good match for high-performance systems where performance is critical. Take a look at the case paper here.
Nautilus is an Aerokernel that we built to support the Legion runtime and other home-grown parallel runtimes. It is designed for the hybrid runtime model and supports large many-core chips with complex memory hierarchies. It boots on commodity x86-64 hardware and the Intel Xeon Phi. You can find out more at the Nautilus website.
Multiverse is a runtime system that enables legacy applications to run in the context of a Hybrid Runtime (HRT) environment without any porting effort. The runtime (with the application) is automatically split into two parts. One part provides a legacy general-purpose OS and library environment. The other part constitutes an accelerated environment wherein the runtime enjoys direct hardware access and the light-weight, high-performance mechanisms provided by an Aerokernel.
Nemo is an accelerated, asynchronous software event system designed for the Hybrid Runtime (HRT) model. Nemo events leverage Inter-processor Interrupt (IPI) hardware and the privileged execution model of HRTs to speed up software events by several orders of magnitude.