Safe, Fast Sharing of memcached as a Protected Library

Safe, Fast Sharing of memcached as a Protected Library
复制标题

安全、快速地共享 memcached 作为受保护的库

DOI:
10.1145/3404397.3404443
复制
发表时间:
2020
期刊:
International Conference on Parallel Processing
影响因子:
--
通讯作者:
Scott, Michael L.
Scott, Michael L.
中科院分区:
--
文献类型:
--
作者:
Kjellqvist, Chris;Hedayati, Mohammad;Scott, Michael L.

文献摘要

参考文献

相似文献

Memcached是一种广泛使用的键值存储。它的结构是一个多线程的用户级服务器,通过套接字连接由潜在的分布式客户端集合访问。由于套接字通信比K-V存储上的单个操作要昂贵得多,因此客户端库的大部分内容都用于处理请求。然而,批处理并不总是可行的,并且当客户端与服务器位于同一台机器上并且可以访问相同的物理内存时(通常情况下),通信成本似乎特别令人遗憾。幸运的是,最近对受保护库的研究表明,在当前的英特尔处理器上,当调用特殊配置的用户级库时,可以快速放大访问权限。独立进程中的库实例可以安全地共享数据,即使在独立进程出现故障时也是如此。我们使用受保护的库来实现新版本的memcached,其中客户端线程执行服务器本身的代码,而不需要发送消息。与原来的版本相比,我们的新版本更简单,包含的代码减少了24%,速度也大大加快,延迟减少了11-56倍,吞吐量增加了大约2倍。
Memcached is a widely used key-value store. It is structured as a multithreaded user-level server, accessed over socket connections by a potentially distributed collection of clients. Because socket communication is so much more expensive than a single operation on a K-V store, much of the client library is devoted to batching of requests. Batching is not always feasible, however, and the cost of communication seems particularly unfortunate when—as is often the case—clients are co-located on a single machine with the server, and have access to the same physical memory.Fortunately, recent work on protected libraries has shown that it is possible, on current Intel processors, to amplify access rights quickly when calling into a specially configured user-level library. Library instances in separate processes can then share data safely, even in the face of independent process failures. We have used protected libraries to implement a new version of memcached in which client threads execute the code of the server themselves, without the need to send messages. Compared to the original, our new version is both significantly simpler, containing 24% less code, and dramatically faster, with a 11–56 × reduction in latency and a roughly 2 × increase in throughput.
作为 seL4 上的多服务器操作系统构建块的 Rump 内核的性能评估
DOI: 10.1145/3124680.3124727
发表时间: 2017
期刊: Proceedings of the 8th Asia-Pacific Workshop on Systems
影响因子: --
作者:
Kevin Elphinstone;Amirreza Zarrabi;Kent McLeod;Gernot Heiser
通讯作者: Gernot Heiser
DOI: 10.1145/3381898.3397212
发表时间: 2020-03
期刊: Proceedings of the 2020 ACM SIGPLAN International Symposium on Memory Management
影响因子: --
作者:
Wentao Cai;Haosen Wen;H. A. Beadle;Chris Kjellqvist;Mohammad Hedayati;M. Scott
通讯作者: Wentao Cai;Haosen Wen;H. A. Beadle;Chris Kjellqvist;Mohammad Hedayati;M. Scott
DOI: 10.1109/micro.2018.00029
发表时间: 2018-10
期刊: 2018 51st Annual IEEE/ACM International Symposium on Microarchitecture (MICRO)
影响因子: --
作者:
Qingrui Liu;Joseph Izraelevitz;Se Kwon Lee;M. Scott;S. Noh;Changhee Jung
通讯作者: Qingrui Liu;Joseph Izraelevitz;Se Kwon Lee;M. Scott;S. Noh;Changhee Jung
DOI: --
发表时间: 2019-03
期刊: ArXiv
影响因子: --
作者:
Joseph Izraelevitz;Jian Yang;Lu Zhang;Juno Kim;Xiao Liu;Amirsaman Memaripour;Yun Joon Soh;
通讯作者: Joseph Izraelevitz;Jian Yang;Lu Zhang;Juno Kim;Xiao Liu;Amirsaman Memaripour;Yun Joon Soh;