Dagger: efficient and fast RPCs in cloud microservices with near-memory reconfigurable NICs
Dagger: efficient and fast RPCs in cloud microservices with near-memory reconfigurable NICs
复制标题
Dagger:具有近内存可重构网卡的云微服务中高效快速的 RPC
DOI:
10.1145/3445814.3446696
复制
发表时间:
2021
期刊:
影响因子:
--
通讯作者:
Delimitrou, Christina
中科院分区:
文献类型:
--
作者:
Lazarev, Nikita;Xiang, Shaojie;Adit, Neil;Zhang, Zhiru;Delimitrou, Christina
The ongoing shift of cloud services from monolithic designs to mi- croservices creates high demand for efficient and high performance datacenter networking stacks, optimized for fine-grained work- loads. Commodity networking systems based on software stacks and peripheral NICs introduce high overheads when it comes to delivering small messages. We present Dagger, a hardware acceleration fabric for cloud RPCs based on FPGAs, where the accelerator is closely-coupled with the host processor over a configurable memory interconnect. The three key design principle of Dagger are: (1) offloading the entire RPC stack to an FPGA-based NIC, (2) leveraging memory interconnects instead of PCIe buses as the interface with the host CPU, and (3) making the acceleration fabric reconfigurable, so it can accommodate the diverse needs of microservices. We show that the combination of these principles significantly improves the efficiency and performance of cloud RPC systems while preserving their generality. Dagger achieves 1.3 − 3.8× higher per-core RPC throughput compared to both highly-optimized software stacks, and systems using specialized RDMA adapters. It also scales up to 84 Mrps with 8 threads on 4 CPU cores, while maintaining state-of- the-art µs-scale tail latency. We also demonstrate that large third- party applications, like memcached and MICA KVS, can be easily ported on Dagger with minimal changes to their codebase, bringing their median and tail KVS access latency down to 2.8 − 3.5 us and 5.4 − 7.8 us, respectively. Finally, we show that Dagger is beneficial for multi-tier end-to-end microservices with different threading models by evaluating it using an 8-tier application implementing a flight check-in service.
DOI:
10.1145/3373376.3378501
发表时间:
2020
期刊:
Proceedings of the Twenty-Fifth International Conference on Architectural Support for Programming Languages and Operating Systems
影响因子:
--
作者:
Arash Pourhabibi Zarandi;Siddharth Gupta;H. Kassir;Mark Sutherland;Zilu Tian;M. Drumond;B. Falsafi;Christoph E. Koch
通讯作者:
Christoph E. Koch
DOI:
--
发表时间:
2019
期刊:
--
影响因子:
--
作者:
Ming Liu;Simon Peter;A. Krishnamurthy;P. Phothilimthana
通讯作者:
Ming Liu;Simon Peter;A. Krishnamurthy;P. Phothilimthana
DOI:
--
发表时间:
2018-10
期刊:
--
影响因子:
--
作者:
P. Phothilimthana;Ming Liu;Antoine Kaufmann;Simon Peter;Rastislav Bodík;T. Anderson
通讯作者:
P. Phothilimthana;Ming Liu;Antoine Kaufmann;Simon Peter;Rastislav Bodík;T. Anderson