LIME: a framework for debugging load imbalance in multi-threaded execution

LIME: a framework for debugging load imbalance in multi-threaded execution
复制标题

LIME:调试多线程执行中负载不平衡的框架

DOI:
--
复制
发表时间:
2011
期刊:
International Conference on Software Engineering
影响因子:
--
通讯作者:
Milos Prvulović
Milos Prvulović
中科院分区:
--
文献类型:
--
作者:
Jung;C. Hughes;Guru Venkataramani;Milos Prvulović

文献摘要

被引文献

相似文献

随着多核处理器的普及,软件必须有效地利用多核来在现代硬件上获得良好的性能。最大的障碍之一是负载不平衡,或者说是内核之间的工作分配不均匀。我们提出了LIME,一个分析并行程序和报告应用程序源代码中的负载不平衡的原因的框架。该框架使用统计技术来查明源于控制流问题(例如,不相等的迭代计数)以及应用和硬件之间的交互(例如,缓存未命中计数不相等)。我们从广泛使用的并行基准套件的应用程序评估LIME,并表明LIME准确地报告的原因负载不平衡,其性质和起源的代码,以及它们的相对重要性。
With the ubiquity of multi-core processors, software must make effective use of multiple cores to obtain good performance on modern hardware. One of the biggest roadblocks to this is load imbalance, or the uneven distribution of work across cores. We propose LIME, a framework for analyzing parallel programs and reporting the cause of load imbalance in application source code. This framework uses statistical techniques to pinpoint load imbalance problems stemming from both control flow issues (e.g., unequal iteration counts) and interactions between the application and hardware (e.g., unequal cache miss counts). We evaluate LIME on applications from widely used parallel benchmark suites, and show that LIME accurately reports the causes of load imbalance, their nature and origin in the code, and their relative importance.