Improving Multithreaded Performance Algorithmically in VIPLE

G. Luca, Sami Mian
{"title":"Improving Multithreaded Performance Algorithmically in VIPLE","authors":"G. Luca, Sami Mian","doi":"10.1109/ISADS.2017.33","DOIUrl":null,"url":null,"abstract":"Flowchart-based programming languages are useful because they are easy to interpret on the user end, and have recently become more popular in implementation in certain fields. In this framework, a program is recognized as a flowchart. In this flowchart, different parts of the program can be executed concurrently or in an optimized order using scheduling algorithms. However, more complex equations, such as large heuristic algorithms for path finding, tend to result in huge slowdowns in execution time due to execution delays in the pipeline. The solution of this paper is to create an algorithm that uses multithreading to maximize the speedup of a given program, while taking into account both theoretical limits as well as implementation limits (due to thread creation and destruction, synchronization, and load balancing). This algorithm also incorporates a new form of branch prediction, which will limit the number of calculations and threads needed in these workflows. Implementation and analysis of the results of this algorithm's use are explored at the end of this paper.","PeriodicalId":303882,"journal":{"name":"2017 IEEE 13th International Symposium on Autonomous Decentralized System (ISADS)","volume":"30 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2017-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2017 IEEE 13th International Symposium on Autonomous Decentralized System (ISADS)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ISADS.2017.33","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1

Abstract

Flowchart-based programming languages are useful because they are easy to interpret on the user end, and have recently become more popular in implementation in certain fields. In this framework, a program is recognized as a flowchart. In this flowchart, different parts of the program can be executed concurrently or in an optimized order using scheduling algorithms. However, more complex equations, such as large heuristic algorithms for path finding, tend to result in huge slowdowns in execution time due to execution delays in the pipeline. The solution of this paper is to create an algorithm that uses multithreading to maximize the speedup of a given program, while taking into account both theoretical limits as well as implementation limits (due to thread creation and destruction, synchronization, and load balancing). This algorithm also incorporates a new form of branch prediction, which will limit the number of calculations and threads needed in these workflows. Implementation and analysis of the results of this algorithm's use are explored at the end of this paper.
在VIPLE中提高多线程性能的算法
基于流程图的编程语言很有用,因为它们在用户端很容易解释,并且最近在某些领域的实现中越来越流行。在这个框架中,程序被看作是一个流程图。在这个流程图中,程序的不同部分可以同时执行,或者使用调度算法以优化的顺序执行。然而,更复杂的方程,如用于寻路的大型启发式算法,往往会由于管道中的执行延迟而导致执行时间的大幅减慢。本文的解决方案是创建一个算法,该算法使用多线程来最大化给定程序的加速,同时考虑到理论限制和实现限制(由于线程的创建和销毁,同步和负载平衡)。该算法还结合了一种新的分支预测形式,这将限制这些工作流中所需的计算和线程数量。本文最后对该算法的实现和使用结果进行了探讨和分析。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
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学术官方微信