RDMA is Turing complete, we just did not know it yet!

RDMA is Turing complete, we just did not know it yet!
复制标题

DOI:
--
复制
发表时间:
2021-03
期刊:
--
影响因子:
--
通讯作者:
Waleed Reda;Marco Canini;Dejan Kosti'c;Simon Peter
Waleed Reda;Marco Canini;Dejan Kosti'c;Simon Peter
中科院分区:
其他
文献类型:
--
作者:
Waleed Reda;Marco Canini;Dejan Kosti'c;Simon Peter

文献摘要

被引文献

相似文献

分布式系统利用卸载以减少CPU的负载越来越流行。尤其是远程直接内存访问(RDMA)卸载已变得流行。但是,RDMA仍需要CPU干预,以使其不仅仅是简单的远程内存访问的复杂卸载。因此,卸载电位是有限的,基于RDMA的系统通常必须围绕此类限制进行工作。我们提出了Redn,这是一种实践,实用的实用方法,用于实施复杂的RDMA卸载,而无需进行任何硬件修改。使用自我修改的RDMA链,我们将现有的RDMA动词接口提升为图灵完整的编程抽象集。我们探讨了与商品RDMA NIC的卸载复杂性和性能的可能性。我们展示了如何将这些RDMA链集成到应用程序中,例如备用的键值商店,从而使我们能够卸载复杂的任务,例如钥匙查找。与使用单方面RDMA原始剂(例如Farm-KV)以及传统的RPC-Over-Over-Over-Over-Over-Over-Over-Over-Over-Over-Over-Over-Over-Over-Over-Over-Over-Over-Over-Over-Over-Over-Over-Over-Over- RDMA接近。此外,与这些基准相比,REDN提供了性能隔离,并且在存在争议的情况下,可以将延迟降低到35倍,同时为应用程序弹性弹性和过程崩溃提供弹性。
It is becoming increasingly popular for distributed systems to exploit offload to reduce load on the CPU. Remote Direct Memory Access (RDMA) offload, in particular, has become popular. However, RDMA still requires CPU intervention for complex offloads that go beyond simple remote memory access. As such, the offload potential is limited and RDMA-based systems usually have to work around such limitations. We present RedN, a principled, practical approach to implementing complex RDMA offloads, without requiring any hardware modifications. Using self-modifying RDMA chains, we lift the existing RDMA verbs interface to a Turing complete set of programming abstractions. We explore what is possible in terms of offload complexity and performance with a commodity RDMA NIC. We show how to integrate these RDMA chains into applications, such as the Memcached key-value store, allowing us to offload complex tasks such as key lookups. RedN can reduce the latency of key-value get operations by up to 2.6x compared to state-of-the-art KV designs that use one-sided RDMA primitives (e.g., FaRM-KV), as well as traditional RPC-over-RDMA approaches. Moreover, compared to these baselines, RedN provides performance isolation and, in the presence of contention, can reduce latency by up to 35x while providing applications with failure resiliency to OS and process crashes.