...
首页> 外文期刊>Software >Cache-aware design of general-purpose Single-Producer-Single- Consumer queues
【24h】

Cache-aware design of general-purpose Single-Producer-Single- Consumer queues

机译:通用单生产者单消费者队列的缓存感知设计

获取原文
获取原文并翻译 | 示例
           

摘要

Data processing pipelines normally use lockless Single-Producer-Single-Consumer (SPSC) queues to efficiently decouple their processing threads and achieve high throughput, minimizing the cost of synchronization. SPSC queues have been widely studied, mostly for applications such as streaming data or network monitoring, where the main goal is maximizing throughput. There are now many applications, such as virtual-machine-virtual-machine communication, software-defined networking, and message-based kernels, where low latency is also important, and the tradeoffs between high-throughput and low-latency algorithms have not been studied equally well. Furthermore, at high or variable transaction rates, the effect of memory hierarchies and cache coherence subsystems may be dominant and yield surprising results. In this paper, we make two contributions. First, we provide a comprehensive study of the two main families of SPSC queues, namely, "Lamport" and "FastForward" queues, with a detailed analytical and experimental characterization of their behavior in terms of operating regimes, throughput, latency, and cache misses. Second, we propose two new queue variants, namely, improved FastForward and batched improved FastForward, which have better worst-case behavior than other variants in terms of cache misses, which is an important feature for a number of applications. Together, these two contributions provide practical guidelines to choose the best solution depending on the application requirements.
机译:数据处理管道通常使用无锁单生产者单消费者(SPSC)队列来有效地解耦其处理线程并实现高吞吐量,从而最大程度地降低了同步成本。对SPSC队列进行了广泛的研究,主要用于诸如流数据或网络监视之类的应用程序,其主要目标是使吞吐量最大化。现在有许多应用程序,例如虚拟机-虚拟机通信,软件定义的网络和基于消息的内核,其中低延迟也很重要,并且高吞吐量和低延迟算法之间的折衷尚未实现学习得同样好。此外,在高事务速率或可变事务速率下,内存层次结构和缓存一致性子系统的影响可能占主导地位,并产生令人惊讶的结果。在本文中,我们做出了两个贡献。首先,我们提供了对SPSC队列的两个主要系列的全面研究,即“ Lamport”和“ FastForward”队列,并根据操作方式,吞吐量,延迟对它们的行为进行了详细的分析和实验表征。和缓存未命中。其次,我们提出了两个新的队列变体,即改进的FastForward和批处理的改进的FastForward,它们在高速缓存未命中方面具有比其他变体更好的最坏情况行为,这是许多应用程序的重要功能。这两个贡献共同提供了实用指南,可根据应用需求选择最佳解决方案。

著录项

  • 来源
    《Software》 |2019年第5期|748-779|共32页
  • 作者单位

    Univ Pisa, Dipartimento Ingn Informaz, Pisa, Italy|Largo Lucio Lazzarino 1, I-56122 Pisa, Italy;

    Univ Pisa, Dipartimento Ingn Informaz, Pisa, Italy;

    Univ Pisa, Dipartimento Ingn Informaz, Pisa, Italy;

  • 收录信息 美国《科学引文索引》(SCI);美国《工程索引》(EI);
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类
  • 关键词

    cache-aware design; FastForward; Lamport lock-free queue; SPSC;

    机译:缓存感知设计;快速转发;Lamport无锁队列;SPSC;

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号