R2 is a communication library over RDMA, which aimes at fast and easy use of RDMA.
It is built over ibverbs
, with minimal dependencies.
It provides several new abstractions for easier use of RDMA,
such as high-performance messaging primitives, lightweight async one-sided RDMA operations
using corotuines.
R2 is well-tuned to achieved the best-possible performance with minimal overhead due to better abstractions.
It is part of DrTM+H, a high performance experimantal transactional engine using RDMA.
R2 is released under the Apache 2.0 license.
As R2 is the refined execution framework of DrTM+H, if you use R2 in your research, please cite our paper:
@inproceedings {drtmhosdi18,
author = {Xingda Wei and Zhiyuan Dong and Rong Chen and Haibo Chen},
title = {Deconstructing RDMA-enabled Distributed Transactions: Hybrid is Better!},
booktitle = {13th {USENIX} Symposium on Operating Systems Design and Implementation ({OSDI} 18)},
year = {2018},
isbn = {978-1-939133-08-3},
address = {Carlsbad, CA},
pages = {233--251},
url = {https://www.usenix.org/conference/osdi18/presentation/wei},
publisher = {{USENIX} Association},
month = oct,
}