研究论文 在上共享 一种快速的无等待多生产者单消费者队列作者:多列夫 艾达斯和罗伊 弗里德曼作者信息和声明ICDCN’22:第23届分布式计算和网络国际会议记录2022年1月页77-86https://doi.org/10.1145/3491003.3491004出版:2022年1月24日 出版历史 获取引文提醒新增引文提醒!此警报已成功添加,将发送到:只要您选择的记录被引用,您就会收到通知。新引文提醒!拜托登录到您的帐户 获取访问权限目录ICDCN’22:第23届分布式计算和网络国际会议记录一种快速的无等待多生产者单消费者队列页77-86上一篇文章求解动态规划问题的格型线性谓词并行算法上一个下一篇文章有限的关联性使并发软件缓存变得轻而易举下一步摘要工具书类信息和贡献者文献计量学和引文获取访问权限工具书类媒体桌子分享摘要在分片数据处理系统、分片内存键值存储、数据流编程和负载共享中,多个并发数据生产者向同一数据消费者提供请求。这可以通过并发队列自然实现,每个使用者从其专用队列中提取其任务。对于可伸缩性,无等待队列优于基于锁的结构。绝大多数无等待队列实现,甚至无锁定队列实现,都支持多生产者多消费者模型。然而,由于实现无等待的多生产商多消费者队列需要使用复杂的助手数据结构,因此这是一项额外的工作。后者会增加此类队列的内存消耗,并限制其性能和可伸缩性。许多这样的设计使用(硬件)缓存不友好的访问模式。在这项工作中,我们研究了无等待多生产者单消费者队列的实现。具体来说,我们提出了一种高效的节省内存的新型无等待多生产者单消费者队列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页。谷歌学者 引用人查看全部索托J埃尔南德斯C图M(2023)JACC-FPGA公司未来一代计算机系统10.1016/j.未来2022.08.005138:C(26-42)在线发布日期:2023年1月1日https://dl.acm.org/doi/10.1016/j.future.2022.08.005 索引术语 一种快速的无等待多生产者单消费者队列信息系统信息存储系统软件及其工程软件符号和工具通用编程语言计算理论算法的设计和分析并发算法 索引项已通过自动分类分配给内容。 建议 可扩展的多生产者多消费者无等待环形缓冲区SAC’15:第30届ACM应用计算年度研讨会论文集 环形缓冲区或循环队列是先入先出(FIFO)队列,它将元素存储在固定长度的数组中。这允许高效的O(1)操作、缓存软件优化和低内存开销。因为环形缓冲区仅限于。。。阅读更多信息与获取和添加一样快的无等待队列PPoPP’16:第21届ACM SIGPLAN并行编程原理与实践研讨会论文集 具有快速和可预测性能的并发数据结构对于利用现在普遍存在的多核处理器的能力至关重要。虽然无等待对象,但其操作在有限数量的。。。阅读更多信息一种无等待的多生产者多消费者环形缓冲区 环形缓冲区是许多算法和应用程序中使用的主要数据结构。它在多媒体、网络路由和交易系统等高需求用例中非常有用。这项工作提出了一种新的环形缓冲区设计,即。。。阅读更多信息 评论 Please enable JavaScript to view thecomments powered by Disqus. 信息和贡献者问询处发布于 ICDCN’22:第23届分布式计算和网络国际会议记录2022年1月298页国际标准图书编号:9781450395601内政部:10.1145/3491003 版权所有©2022 ACM。允许制作本作品的全部或部分数字或硬拷贝供个人或课堂使用,但不收取任何费用,前提是复制品的制作或分发不是为了盈利或商业利益,并且复制品在首页注明本通知和完整引文。必须尊重作者以外的其他人对本作品组成部分的版权。允许用信用证进行摘要。要以其他方式复制或重新发布,在服务器上发布或重新发布到列表,需要事先获得特定许可和/或付费。从请求权限[电子邮件保护].出版商计算机协会美国纽约州纽约市出版历史出版:2022年1月24日权限请求对此文章的权限。请求权限检查更新作者标记多生产者单一消费者无边界队列无需等待限定符研究文章研究推荐有限公司会议ICDCN’22号ICDCN’22:第23届分布式计算和网络国际会议2022年1月4日至7日AA,印度德里 贡献者 其他指标查看文章指标文献计量学和引文文献计量学 文章指标 1引文总数查看引文203总下载次数下载次数(过去12个月)82下载次数(最近6周)5 其他指标查看作者指标引文 引用人查看全部索托J埃尔南德斯C图M(2023)JACC-FPGA公司未来一代计算机系统10.1016/j.未来2022.08.005138:C(26-42)在线发布日期:2023年1月1日https://dl.acm.org/doi/10.1016/j.future.2022.08.005 视图选项获取访问权限 登录选项检查您是否可以通过登录凭据或您的机构访问本文。登录完全访问权限获取此出版物 查看选项 PDF格式以PDF文件查看或下载。PDF格式 电子阅读器使用联机查看电子阅读器.电子阅读器 HTML格式格式在中查看本文HTML格式格式。HTML格式媒体数字其他桌子分享分享共享此出版物链接复制链接已复制!复制失败。在社交媒体上分享Linkedin公司重新编辑电子邮件附属公司多列夫 艾达斯以色列Technion查看配置文件罗伊 弗里德曼以色列Technion查看配置文件