并行程序中同步瓶颈的检测和优化方法
作者:
作者单位:

(河北科技大学 信息科学与工程学院, 河北 石家庄 050018)

作者简介:

张杨(1980—),男,河北秦皇岛人,副教授,博士,硕士生导师,E-mail:zhangyang@hebust.edu.cn

通讯作者:

中图分类号:

TP311

基金项目:

国家自然科学基金资助项目(61440012);河北省高等学校科学研究计划重点资助项目(ZD2019093)


Detection and optimization approaches for synchronization bottlenecks in parallel programs
Author:
Affiliation:

(School of Information Science and Engineering, Hebei University of Science and Technology, Shijiazhuang 050018, China)

Fund Project:

  • 摘要
  • |
  • 图/表
  • |
  • 访问统计
  • |
  • 参考文献
  • |
  • 相似文献
  • |
  • 引证文献
  • |
  • 资源附件
  • |
  • 文章评论
    摘要:

    针对并发程序中锁的不当使用可能导致性能瓶颈的问题,提出检测和优化并发程序中同步瓶颈的方法IdeSync。IdeSync使用静态分析方法获取同步方法和同步块,构建静态同步依赖图,采用基于执行路径的动态分析技术进行同步依赖关系分析,构建同步依赖图。为了暴露性能瓶颈,在同步依赖图上通过增加程序工作负载的方式,监测临界区的性能变化,并针对检测到的同步瓶颈给出优化建议。在实验中通过HSQLDB、SPECjbb2005和RxJava等12个大型实际应用程序对IdeSync的有效性进行验证,共检测到72个同步瓶颈,根据优化建议进行优化后程序性能均有所提升。实验表明,IdeSync能够有效地检测和优化同步瓶颈。

    Abstract:

    Aiming at the problem that improper locks in parallel programs may lead to performance bottlenecks, an approach called IdeSync was proposed to detect and optimize synchronization bottlenecks. IdeSync leveraged the static analysis to obtain the synchronized methods and blocks, and constructed a static synchronization dependency graph. The dynamic analysis technology based on the execution path was used to analyze the synchronization dependency and build the synchronization dependency graph.In order to expose the performance bottleneck, the performance change of the critical section was monitored by increasing the program workload on the synchronization dependency graph, and optimization suggestions were given for the detected synchronization bottleneck. The effectiveness of IdeSync was evaluated with 12 large real-world applications such as HSQLDB, SPECjbb2005 and RxJava, and a total of 72 synchronization bottlenecks were detected. All these bottlenecks were optimized based on IdeSync′s suggestion to achieve performance improvements, which shows that IdeSync can effectively detect and optimize synchronization bottlenecks.

    参考文献
    相似文献
    引证文献
引用本文

张杨,李柳旭.并行程序中同步瓶颈的检测和优化方法[J].国防科技大学学报,2022,44(5):92-101.
ZHANG Yang, LI Liuxu. Detection and optimization approaches for synchronization bottlenecks in parallel programs[J]. Journal of National University of Defense Technology,2022,44(5):92-101.

复制
分享
文章指标
  • 点击次数:
  • 下载次数:
  • HTML阅读次数:
  • 引用次数:
历史
  • 收稿日期:2021-12-23
  • 最后修改日期:
  • 录用日期:
  • 在线发布日期: 2022-09-28
  • 出版日期: 2022-10-28
文章二维码