- 简介远程直接内存访问(RDMA)网络由于其与传统基于内核的TCP/IP网络相比具有更高的速度、更低的延迟和较少的CPU开销,正在工业界迅速被采用。RDMA使线程能够访问远程内存而无需与另一个进程交互。但是,本地访问和远程访问之间的原子性不能由该技术保证,因此会显着增加同步的复杂性。当前的解决方案是要求想要访问RDMA可访问区域中的本地内存的线程通过称为环回的机制通过RDMA卡,但这可能会快速降低性能。在本文中,我们介绍了ALock,这是一种专为基于RDMA的系统设计的新型锁原语。ALock允许程序员在不使用环回或远程过程调用(RPC)的情况下同步本地和远程访问。我们从经典的Peterson算法中汲取灵感,创建了一个分层设计,其中包括两个队伍(远程和本地)的嵌入式MCS锁。为了评估ALock,我们实现了一个分布式锁表,在各种集群配置和工作负载中测量吞吐量和延迟。在大多数本地操作的工作负载中,ALock的性能比竞争对手高出多达29倍,并实现了高达20倍的延迟。
- 图表
- 解决问题解决RDMA网络中同步问题的新型锁定原语的设计和实现
- 关键思路ALock是一种新型锁定原语,能够在RDMA网络中实现本地和远程访问的同步,不需要使用loopback或RPC。ALock采用了Peterson算法的分层设计,包括两个cohort的内嵌MCS锁。
- 其它亮点ALock在各种集群配置和工作负载中实现了分布式锁表,并测量了吞吐量和延迟。在大多数本地操作的工作负载中,ALock的性能优于竞争对手高达29倍,并实现了高达20倍的延迟。
- 相关研究集中在RDMA网络中同步问题的解决方案,如使用loopback或RPC,以及其他锁定原语的设计和实现。相关论文包括“RDMA-based Fine-Grained Locking”和“Design and Evaluation of RDMA-Aware Locks”。
沙发等你来抢
去评论
评论
沙发等你来抢