POPCORN LINUX
Updated 3 days ago
We implemented a high-performance in-kernel virtual network interface, that allows processes running on secondary kernels to have network access if required. Applications, however, can rely on standard inter-process communication techniques, like shared memory, which works on multiple kernels operating on cache coherent kernels ,or message-passing on other hardware. For example, we used inter-kernel shared memory to provide a MPICH2 Nemesis channel for running MPI applications on Popcorn. Finally, if the user needs to log into a secondary kernel directly, for debugging purposes, then they can ssh over the in-kernel virtual network, or we provide virtual TTYs between kernels for when the networking itself needs debugging.