基于并行推测构造二叉搜索树的性能评价

IF 1.3 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING
Hiroaki Hirata, Atsushi Nunome
{"title":"基于并行推测构造二叉搜索树的性能评价","authors":"Hiroaki Hirata, Atsushi Nunome","doi":"10.1007/s44227-023-00013-w","DOIUrl":null,"url":null,"abstract":"Abstract Binary search trees (BSTs) are one of the most important data structures in the field of computer science. We may easily write a parallel construction program of a BST by extending the sequential algorithm straightly. However, in such conventional approaches, the order of nodes inserted into a BST is determined dynamically, depending on the occasional state of the parallel thread execution. It results in a BST with a different structure (node position) generated on every execution of the parallel program. On the other hand, we have been developing parallel construction schemes of the BST with the same structure as a BST generated by the sequential algorithm. One is the speculatively parallel construction of a BST. And another is the purely (non-speculatively) parallel construction, but it was derived through the concept of thread-level speculation. This paper evaluates the performances of those construction schemes on several types of shared-memory multiprocessors. For the large enough size of BST, our new parallel programs can construct a BST with always the same structure on a little lower or sometimes higher performance than the program that makes a BST with a different structure on every execution. And in contrast with the general expectation that simply enlarging the size of parallel tasks increases misspeculation and damages the performance, we found that it sometimes enhances the performance of speculatively parallel execution.","PeriodicalId":42585,"journal":{"name":"International Journal of Networked and Distributed Computing","volume":"51 S256","pages":"0"},"PeriodicalIF":1.3000,"publicationDate":"2023-11-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Performance Evaluation on Parallel Speculation-Based Construction of a Binary Search Tree\",\"authors\":\"Hiroaki Hirata, Atsushi Nunome\",\"doi\":\"10.1007/s44227-023-00013-w\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Abstract Binary search trees (BSTs) are one of the most important data structures in the field of computer science. We may easily write a parallel construction program of a BST by extending the sequential algorithm straightly. However, in such conventional approaches, the order of nodes inserted into a BST is determined dynamically, depending on the occasional state of the parallel thread execution. It results in a BST with a different structure (node position) generated on every execution of the parallel program. On the other hand, we have been developing parallel construction schemes of the BST with the same structure as a BST generated by the sequential algorithm. One is the speculatively parallel construction of a BST. And another is the purely (non-speculatively) parallel construction, but it was derived through the concept of thread-level speculation. This paper evaluates the performances of those construction schemes on several types of shared-memory multiprocessors. For the large enough size of BST, our new parallel programs can construct a BST with always the same structure on a little lower or sometimes higher performance than the program that makes a BST with a different structure on every execution. And in contrast with the general expectation that simply enlarging the size of parallel tasks increases misspeculation and damages the performance, we found that it sometimes enhances the performance of speculatively parallel execution.\",\"PeriodicalId\":42585,\"journal\":{\"name\":\"International Journal of Networked and Distributed Computing\",\"volume\":\"51 S256\",\"pages\":\"0\"},\"PeriodicalIF\":1.3000,\"publicationDate\":\"2023-11-08\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"International Journal of Networked and Distributed Computing\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1007/s44227-023-00013-w\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q3\",\"JCRName\":\"COMPUTER SCIENCE, SOFTWARE ENGINEERING\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"International Journal of Networked and Distributed Computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1007/s44227-023-00013-w","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"COMPUTER SCIENCE, SOFTWARE ENGINEERING","Score":null,"Total":0}
引用次数: 0

摘要

摘要二叉搜索树(BSTs)是计算机科学领域中最重要的数据结构之一。通过对序列算法的直接扩展,可以很容易地编写出BST的并行构造程序。然而,在这种传统方法中,插入到BST中的节点顺序是动态确定的,这取决于并行线程执行的偶尔状态。它导致每次执行并行程序时生成具有不同结构(节点位置)的BST。另一方面,我们一直在开发与序列算法生成的BST结构相同的BST并行构造方案。一种是推测性的BST平行结构。另一种是纯粹的(非思辨的)并行结构,但它是通过线程级思辨的概念推导出来的。本文在几种类型的共享内存多处理器上对这些构造方案的性能进行了评价。对于足够大的BST,我们的新并行程序可以构建一个始终具有相同结构的BST,但性能比每次执行都使用不同结构的BST的程序稍低或有时更高。我们发现,简单地扩大并行任务的规模会增加错误推测并损害性能,而这与一般的预期相反,它有时会提高推测性并行执行的性能。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Performance Evaluation on Parallel Speculation-Based Construction of a Binary Search Tree
Abstract Binary search trees (BSTs) are one of the most important data structures in the field of computer science. We may easily write a parallel construction program of a BST by extending the sequential algorithm straightly. However, in such conventional approaches, the order of nodes inserted into a BST is determined dynamically, depending on the occasional state of the parallel thread execution. It results in a BST with a different structure (node position) generated on every execution of the parallel program. On the other hand, we have been developing parallel construction schemes of the BST with the same structure as a BST generated by the sequential algorithm. One is the speculatively parallel construction of a BST. And another is the purely (non-speculatively) parallel construction, but it was derived through the concept of thread-level speculation. This paper evaluates the performances of those construction schemes on several types of shared-memory multiprocessors. For the large enough size of BST, our new parallel programs can construct a BST with always the same structure on a little lower or sometimes higher performance than the program that makes a BST with a different structure on every execution. And in contrast with the general expectation that simply enlarging the size of parallel tasks increases misspeculation and damages the performance, we found that it sometimes enhances the performance of speculatively parallel execution.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
International Journal of Networked and Distributed Computing
International Journal of Networked and Distributed Computing COMPUTER SCIENCE, SOFTWARE ENGINEERING-
CiteScore
4.10
自引率
0.00%
发文量
0
审稿时长
13 weeks
期刊介绍: The International Journal of Networked and Distributed Computing publishes original articles on both theory and practice which address foundations, crucial challenges, state-of-the-art solutions and implications on all aspects of networked and distributed computing. As a driving force behind the ongoing technological revolution, networked and distributed computing has been transforming just about every part of the world we live in: the way we coordinate and communicate, the way we identify problems and solve them, the way we entertain and enjoy our lives and the way we perceive our future. Networked and distributed computing has touched on a wide range of issues with significant implications, from communication protocols, to the Internet, smartphones, pervasive and ubiquitous cities, etc. Like there are numerous benefits of networked and distributed computing, there are also crucial challenges associated with it. Networked and distributed computing should be more broadly applied to a variety of areas, such as robots, nano-technology, space/sea exploration, (green) energy management, etc. Ultimately, networked and distributed computing should lead to a better future, where distributed systems should help people to achieve their goals in an interoperable, secure, fast, usable and useful manner. Networked and distributed computing should answer what it is that we need, why we need it and how we can achieve it.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信