跳到主要内容
10.1145/3491003.3491004交流会议文章/章节视图摘要出版物页面icdcn会议记录会议集合
研究论文

一种快速的无等待多生产者单消费者队列

出版:2022年1月24日 出版历史
  • 获取引文提醒
  • 摘要

    在分片数据处理系统、分片内存键值存储、数据流编程和负载共享中,多个并发数据生产者向同一数据消费者提供请求。这可以通过并发队列自然实现,每个使用者从其专用队列中提取其任务。对于可伸缩性,无等待队列优于基于锁的结构。
    绝大多数无等待队列实现,甚至无锁定队列实现,都支持多生产者多消费者模型。然而,由于实现无等待的多生产商多消费者队列需要使用复杂的助手数据结构,因此这是一项额外的工作。后者会增加此类队列的内存消耗,并限制其性能和可伸缩性。许多这样的设计使用(硬件)缓存不友好的访问模式。
    在这项工作中,我们研究了无等待多生产者单消费者队列的实现。具体来说,我们提出了一种高效的节省内存的新型无等待多生产者单消费者队列Jiffy,并正式证明了其正确性。我们将Jiffy的性能和内存需求与其他最先进的无锁和无等待队列进行了比较。我们表明,Jiffy确实可以使用多达128个线程保持良好的性能,与我们对比的次佳构造相比,它的吞吐量提高了50%,并且消耗的内存减少了≈90%。

    工具书类

    [1]
    多列夫·阿达斯。2020年。Jiffy的C++实现。(2020). https://github.com/DolevAda/Jiffy。
    [2]
    多列夫·阿达斯和罗伊·弗里德曼。2020年,快速无等待多生产者单消费者排队。CoRR abs/2010.14189(2020)。
    [3]
    Dan Alistarh、Justin Kopinsky、Jerry Li和Nir Shavit。2015年,Spraylist:一个可扩展的宽松优先级队列。程序中。ACM PPoPP。11–20.
    [4]
    詹姆斯·阿斯彭斯和莫里斯·赫利希。1990年。异步PRAM模型中的无等待数据结构。程序中。ACM SPAA。340–349.
    [5]
    克伦·森索·希尔(Keren Censor-Hillel)、埃雷斯·彼得兰克(Erez Petrank)和沙哈尔·蒂姆纳特(Shahar Timnat)。2015.救命!。程序中。ACM PODC的。241–250.
    [6]
    马泰·戴维。2004.单排队无等待队列实现。在分布式计算国际研讨会上。施普林格,132–143。
    [7]
    都铎·戴维(Tudor David)、阿列克桑达尔·德拉戈杰维奇(Aleksandar Dragojevic)、拉希德·格拉乌伊(Rachid Guerraoui)和伊戈尔·扎布洛奇(Igor Zablotchi)。2018.无日志并发数据结构。在USENIX ATC中。373–386.
    [8]
    Panagiota Fatourou和Nikolaos D Kallimanis。2012.重新审视组合同步技术。程序中。ACM PPoPP。257–266.
    [9]
    约翰·贾科莫尼(John Giacomoni)、蒂普·莫斯利(Tipp Moseley)和曼尼什·瓦奇哈拉贾尼(Manish Vachharajani)。2008.FastForward实现高效管道并行:一个缓存优化的并发无锁队列。程序中。ACM PPoPP。43–52.
    [10]
    Mohammad Hedayati、Kai Shen、Michael L。斯科特和迈克·马蒂。2019.多队列公平排队。在USENIX年度技术会议(ATC)上。301–314.
    [11]
    莫里斯·赫利希(Maurice Herlihy)。1991.等待免费同步。《美国计算机学会编程语言与系统学报》(TOPLAS)13,1(1991),124–149。
    [12]
    莫里斯·赫利希和尼尔·沙维特。2011.多处理器编程的艺术。摩根·考夫曼。
    [13]
    莫里斯·普·赫利希和珍妮特·温格。1990.线性化:并发对象的正确条件。美国计算机学会程序设计语言与系统学报(TOPLAS)12,3(1990),463-492。
    [14]
    Prasad Jayanti和Srdjan Petrovic。2005.对数时间单删除器、多插入器无等待队列和堆栈。在软件技术和理论计算机科学基础国际会议上。施普林格,408–419。
    [15]
    Alex Kogan和Erez Petrank。2011.具有多个排队者和排队者的无等待队列。程序中。ACM PPoPP。223–234.
    [16]
    Alex Kogan和Erez Petrank。2012.创建快速无等待数据结构的方法。程序中。ACM PPoPP。141–150.
    [17]
    Edya Ladan-Mozes和Nir Shavit。2004.无锁FIFO队列的乐观方法。程序中。DISC的。117–131.
    [18]
    纳特·明·莱伊、阿德里安·瓜托、阿尔伯特·科恩和安东尼乌·波普。2013.正确有效的有界FIFO队列。在第25届计算机体系结构和高性能计算国际研讨会上。IEEE,144–151。
    [19]
    刘雪和何文波。2007.使用离散事件控制的主动队列管理设计。在第46届IEEE决策与控制会议上。3806–3811.
    [20]
    本·马内斯(Ben Manes)。2017.咖啡因:Java 8的高性能缓存库。(2017). https://github.com/ben-manes/caffection。
    [21]
    马吉德M。迈克尔和迈克尔·L。斯科特。1996.简单、快速、实用的非阻塞和阻塞并发队列算法。在ACM PODC中。267–275.
    [22]
    Gal Milman、Alex Kogan、Yossi Lev、Victor Luchangco和Erez Petrank。2018年。BQ:无锁队列和批处理。ACM SPAA会议记录。99–109.
    [23]
    亚当·莫里森和耶胡达·阿菲克。2013.x86处理器的快速并发队列。程序中。ACM PPoPP。103–112.
    [24]
    尼古拉斯·奈瑟科特和朱利安·苏厄德。2003年,《Valgrind:程序监督框架》,理论计算机科学电子笔记89,2(2003),44-66。
    [25]
    威廉·N·。谢勒、道格·李和迈克尔·L。斯科特。2006.可扩展同步队列。在ACM PPOPP会议记录中。147–156.
    [26]
    迈克尔·L·。斯科特。2002.基于可伸缩队列的自旋锁中的非阻塞超时。ACM PODC会议记录。31–40.
    [27]
    迈克尔·L·。斯科特和威廉·N。谢勒。2001.带超时的可扩展基于队列的自旋锁。在ACM PPOPP会议记录中。44–52.
    [28]
    尼卢法尔·沙菲伊。2009.堆栈和队列的基于非块数组的算法。在ICDCN会议记录中。施普林格,55–66岁。
    [29]
    尼尔·沙维特和阿萨夫·泽马赫。1999.可扩展并发优先级队列算法。ACM PODC会议记录。113–122.
    [30]
    福蒂尼·斯特拉蒂、克里斯蒂娜·吉安诺拉、迪米特里奥斯·西亚卡瓦拉斯、乔治奥一世。2019年,Goumas和Nectarios Koziris。NUMA体系结构的自适应并发优先级队列。第16届ACM国际计算前沿会议(CF)论文集。135–144.
    [31]
    Philippas Tsigas和Yi Zhang。2001.共享内存多处理器系统的简单、快速和可扩展的非阻塞并发FIFO队列。在ACM SPAA中。134–143.
    [32]
    Hans Vandierendonck、Kallia Chronaki和Dimitrios S Nikolopoulos。2013.具有超队列的确定性无标度管道并行性。高性能计算、网络、存储和分析国际会议论文集。ACM,第32页。
    [33]
    杨朝然(Chaoran Yang)和约翰·梅勒·克鲁米(John Mellor-Crummey)。2016年,排队等候的速度快于取加。程序。ACM PPoPP第51、8(2016)、16页。

    引用人

    查看全部

    索引术语

    1. 一种快速的无等待多生产者单消费者队列
          索引项已通过自动分类分配给内容。

          建议

          评论

          信息和贡献者

          问询处

          发布于

          封面图片ACM其他会议
          ICDCN’22:第23届分布式计算和网络国际会议记录
          2022年1月
          298页
          国际标准图书编号:9781450395601
          内政部:10.1145/3491003
          允许制作本作品的全部或部分数字或硬拷贝供个人或课堂使用,但不收取任何费用,前提是复制品的制作或分发不是为了盈利或商业利益,并且复制品在首页注明本通知和完整引文。必须尊重作者以外的其他人对本作品组成部分的版权。允许用信用证进行摘要。要以其他方式复制或重新发布,在服务器上发布或重新发布到列表,需要事先获得特定许可和/或付费。从请求权限[电子邮件保护].

          出版商

          计算机协会

          美国纽约州纽约市

          出版历史

          出版:2022年1月24日

          权限

          请求对此文章的权限。

          检查更新

          作者标记

          1. 多生产者单一消费者
          2. 无边界队列
          3. 无需等待

          限定符

          • 研究文章
          • 研究
          • 推荐有限公司

          会议

          ICDCN’22号
          ICDCN’22:第23届分布式计算和网络国际会议
          2022年1月4日至7日
          AA,印度德里

          贡献者

          其他指标

          文献计量学和引文

          文献计量学

          文章指标

          • 下载次数(过去12个月)82
          • 下载次数(最近6周)5

          其他指标

          引文

          引用人

          查看全部

          视图选项

          获取访问权限

          登录选项

          完全访问权限

          查看选项

          PDF格式

          以PDF文件查看或下载。

          PDF格式

          电子阅读器

          使用联机查看电子阅读器.

          电子阅读器

          HTML格式格式

          在中查看本文HTML格式格式。

          HTML格式

          媒体

          数字

          其他

          桌子

          分享

          分享

          共享此出版物链接

          在社交媒体上分享