首页> 外文学位 >Efficient dynamic verification algorithms for MPI applications.
【24h】

Efficient dynamic verification algorithms for MPI applications.

机译:适用于MPI应用程序的高效动态验证算法。

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

摘要

The Message Passing Interface (MPI) Application Programming Interface (API) is widely used in almost all high performance computing applications. Yet, conventional debugging tools for MPI suffer from two serious drawbacks: they cannot prevent the exponentially growing number of redundant schedules from being explored; and they cannot prevent the processes from being locked into a small subset of schedules, unfortunately often reaching the potentially buggy schedules only when programs are ported to new platforms.;Dynamic verification methods are the natural choice for debugging real world MPI programs when model extraction and maintenance are expensive. While many dynamic verification tools exist for verifying shared memory programs, there are no corresponding tools that support MPI -- the lingua franca of parallel programming.;While interleaving reduction suggests the use of dynamic partial order reduction (DPOR), four aspects of MPI make previous DPOR algorithms inapplicable: (i) MPI contains asynchronous calls that can complete out of program order; (ii) MPI has global synchronization operations that have weak semantics; (iii) the runtime of MPI cannot, without intrusive modifications, be forced to pursue a specific interleaving with nondeterministic wildcard receives; and (iv) the progress of MPI operations can depend on platform-dependent runtime buffering, making bugs sometimes appear when resources are added to boost performance. This dissertation provides a formal model for MPI, and introduces a tailor-made notion of Happens-Before ordering for MPI functions. The crucial feature of this Happens-Before relation is that it elegantly solves all these four problems. MPI dynamic analysis is turned into a prioritized scheduling algorithm respecting MPI's Happens-Before.;This dissertation contributes three algorithms that have been demonstrated in the context of a practical MPI dynamic verification tool called In-Situ Partial order (ISP). The Partial Order avoiding Elusive Interleavings (POE) algorithm is a simple prioritized execution of the MPI transitions and is guaranteed to find all deadlocks, assertion violations and resource leaks under zero buffering. The POEOPT algorithm avoids many of the redundant interleavings of POE by fully exploiting MPI's Happens-Before. Finally, the POEMSE algorithm discovers all possible minimal runtime bufferings that guarantee to discover bugs. POEMSE's slack analysis has minimal overheads, and offers the power of verifying for safe portability by considering all relevant bufferings that might exist in various platforms. In effect, a program is dynamically verified not just with respect to the platform on which the tool is run, but also with respect to all platforms.
机译:消息传递接口(MPI)应用程序编程接口(API)几乎在所有高性能计算应用程序中广泛使用。然而,用于MPI的常规调试工具有两个严重的缺点:它们无法阻止探索冗余计划的数量呈指数增长;并且它们无法防止将进程锁定在时间表的一小部分中,不幸的是,只有在将程序移植到新平台时,经常会达到潜在的错误时间表。动态验证方法是在模型提取和调试时调试实际MPI程序的自然选择。维护很昂贵。虽然存在许多用于验证共享内存程序的动态验证工具,但没有支持MPI的相应工具(并行编程的通用语言)。虽然交织减少建议使用动态部分顺序减少(DPOR),但MPI的四个方面先前的DPOR算法不适用:(i)MPI包含异步调用,这些调用可以不按程序顺序完成; (ii)MPI具有语义较弱的全局同步操作; (iii)未经侵入性修改,不能强迫MPI的运行时进行不确定的通配符接收的特定交织; (iv)MPI操作的进度可能取决于平台相关的运行时缓冲,这使得在添加资源以提高性能时有时会出现错误。本文为MPI提供了形式化模型,并介绍了量身定制的“发生-先于MPI功能订购”的概念。这种“之前发生”关系的关键特征是它优雅地解决了所有这四个问题。 MPI动态分析被转化为优先考虑MPI的Happens-Before的调度算法。本论文贡献了三种算法,这些算法已在称为Insitu Partial Order(ISP)的实用MPI动态验证工具的背景下得到了证明。避免偏序的偏序交错(POE)算法是MPI转换的简单优先处理,可以保证在零缓冲下找到所有死锁,断言和资源泄漏。 POEOPT算法通过充分利用MPI的Happens-Before避免了POE的许多冗余交织。最后,POEMSE算法发现所有可能的最小运行时缓冲区,这些缓冲区保证可以发现错误。 POEMSE的延迟分析具有最小的开销,并且通过考虑各种平台中可能存在的所有相关缓冲,提供了验证安全可移植性的功能。实际上,不仅针对运行该工具的平台,而且针对所有平台,对程序进行动态验证。

著录项

  • 作者

    Vakkalanka, Sarvani.;

  • 作者单位

    The University of Utah.;

  • 授予单位 The University of Utah.;
  • 学科 Computer Science.
  • 学位 Ph.D.
  • 年度 2010
  • 页码 126 p.
  • 总页数 126
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类
  • 关键词

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号