...
首页> 外文期刊>International journal of computers and their applications >Evolution of the Multicore Adaptability of Scientific Software Systems
【24h】

Evolution of the Multicore Adaptability of Scientific Software Systems

机译:科学软件系统的多核适应性的演变

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

获取外文期刊封面封底 >>

       

摘要

An empirical study that examines the challenges that scientific software systems developed in C/C++ have that prevent them from efficiently exploiting the full potential of the new multicore technology is presented. The study is conducted on 12 open source scientific systems comprising more than 5.4 million lines of code and containing over 84.5 thousand for- loop statements. Static analysis methods are applied to each system to determine the number of for-loops and free-loops (i.e., loops that can be parallelized). Additionally, each system is analyzed and the challenges and inhibitors to parallelization from a software engineering perspective are detected and presented. Some challenges towards adapting and re- engineering scientific software systems to better utilize modern multi-core architectures are determined including function side effects, data dependency and jumping statements. The results show that the most prevalent inhibitors are functions called within for-loops that have side effects, followed by data dependency as the second most prevalent inhibitor. These inhibitors pose the greatest roadblock to re-engineer and transform systems to better utilize parallelization. Results also show that data dependency has a more significant impact on scientific systems compared to general purpose systems that have been studied in previous studies. Historical data over a 5- year period of inhibitor counts for the set of systems studied is also presented. It shows that there is an insignificant change in the potential for parallelization of for-loops over time in general. The study suggests some software engineering techniques that have the potential to improve the parallelizability of scientific systems.
机译:提出了一项实证研究,研究了用C / C ++开发的科学软件系统所面临的挑战,这些挑战阻止了它们有效地利用新的多核技术的全部潜力。这项研究是在12个开源科学系统上进行的,该系统包含540万行代码,包含84500多个for-loop语句。静态分析方法应用于每个系统,以确定for循环和free循环(即可以并行化的循环)的数量。此外,还将分析每个系统,并从软件工程的角度检测并提出并行化的挑战和障碍。确定了适应和重新设计科学软件系统以更好地利用现代多核体系结构的一些挑战,包括功能副作用,数据依赖性和跳转语句。结果表明,最普遍的抑制剂是在for循环中调用的具有副作用的函数,其次是数据依赖性,它是第二普遍的抑制剂。这些抑制剂构成了重新设计和改造系统以更好地利用并行化的最大障碍。结果还表明,与先前研究中研究的通用系统相比,数据依赖对科学系统的影响更大。还提供了所研究系统在5年内抑制剂计数的历史数据。结果表明,for循环并行化的潜力通常不会随时间变化。这项研究提出了一些软件工程技术,它们有可能改善科学系统的并行性。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号