-
题名基于逐步细化快照序列的多核并行程序调试
- 1
-
-
作者
王博弘
刘轶
张国振
钱德沛
-
机构
北京航空航天大学中德软件技术联合研究所
-
出处
《计算机研究与发展》
EI
CSCD
北大核心
2017年第4期821-831,共11页
-
基金
国家"八六三"高技术研究发展计划基金项目(2012AA01A302).
-
文摘
多核并行程序的调试是一个公认的困难问题,困难主要来自于程序执行的不确定性.可重现调试(replay debug)提供了消除程序中不确定性的能力,但是现有的可重现调试解决方案都无法应用于商用的软硬件平台中,且进行调试所带来的性能损失会随着并发度的增加而超线性地增长.提出了一种基于运行快照的新型并行程序调试方法SDT(snapshot debug tool).该方法以离线的断点设置、运行快照捕捉和运行快照细化为基础,提出了一套可以指导用户由粗到细发现错误的调试过程,并在通用的软硬件平台上进行了实现.实验结果显示,在8线程的并发条件下,使用SDT调试所带来的时间性能损耗平均为51.88%;同时当线程数增长4倍时,使用SDT所带来的额外时间消耗最多增长1倍,具有很好的可扩展性.记录快照的数据量是影响SDT性能的重要挑战,实验证明通过使用增量式的快照记录方式可以有效地降低需要记录的数据量,减少记录快照花费的时间,提高SDT的整体性能.
-
关键词
可重现调试
运行快照
确定性
多核并行程序调试
多线程
-
Keywords
replay debug
program snapshot
deterministic
multi-core parallel program debug
multithread
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
TP302
[自动化与计算机技术—计算机系统结构]
-