This research is to provide a high-performance computing/storage system on top of multiple nodes connected with high-performance RDMA interconnect. To realize the idea, we opt to allow a process to be run distributed over multiple nodes with only a few lines of code modification. To this end, we are hacking the Linux kernel memory systems to provide a consistent memory view to the distributed threads. Also, this enables dynamic thread migration without adapting existing code to complicated memory consistency models.
The ever-growing demands for high-performance storage systems can be now achieved through using key-value SSDs and non-volatile memory technologies. We are interested in exploring the file system and memory system design in operating systems to adapt those emerging technologies.
RDMA allows low-latency in accessing remote memory. However, using RDMA is very different from programming with socket in that its APIs are event-driven and performance critical. We are exploring to adopt RDMA to distributed memory systems (as stated above) and file systems and to optimize the communication layer.