Abstract
In our hybrid runtime (HRT) model, a parallel runtime system and the application are together transformed into a specialized OS kernel that operates entirely in kernel mode and can thus implement exactly its desired abstractions on top of fully privileged hardware access. We describe the design and implementation of two new tools that support the HRT model. The first, the Nautilus Aerokernel, is a kernel framework specifically designed to enable HRTs for x64 and Xeon Phi hardware. Aerokernel primitives are specialized for HRT creation and thus can operate much faster, up to two orders of magnitude faster, than related primitives in Linux. Aerokernel primitives also exhibit much lower variance in their performance, an important consideration for some forms of parallelism. We have realized several prototype HRTs, including one based on the Legion runtime, and we provide application macrobenchmark numbers for our Legion HRT. The second tool, the hybrid virtual machine (HVM), is an extension to the Palacios virtual machine monitor that allows a single virtual machine to simultaneously support a traditional OS and software stack alongside an HRT with specialized hardware access. The HRT can be booted in a time comparable to a Linux user process startup, and functions in the HRT, which operate over the user process's memory, can be invoked by the process with latencies not much higher than those of a function call.
Original language | English (US) |
---|---|
Title of host publication | VEE 2016 - Proceedings of the 12th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments |
Publisher | Association for Computing Machinery, Inc |
Pages | 161-175 |
Number of pages | 15 |
ISBN (Electronic) | 9781450339476 |
DOIs | |
State | Published - Mar 25 2016 |
Event | 12th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments, VEE 2016 - Atlanta, United States Duration: Apr 2 2016 → Apr 3 2016 |
Publication series
Name | VEE 2016 - Proceedings of the 12th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments |
---|
Other
Other | 12th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments, VEE 2016 |
---|---|
Country/Territory | United States |
City | Atlanta |
Period | 4/2/16 → 4/3/16 |
Funding
This project is made possible by support from the United States National Science Foundation through grant CCF-1533560 and from Sandia National Laboratories through the Hobbes Project, which is funded by the 2013 Exascale Operating and Runtime Systems Program under the Office of Advanced Scientific Computing Research in the United States Department of Energy's Office of Science. We also thank Madhav Suresh and Conor Hetland for their help with NESL and NDPC.
ASJC Scopus subject areas
- Software
- Artificial Intelligence