首页> 外文会议>ACM SIGPLAN conference on Programming language design and implementation >Binary analysis for measurement and attribution of program performance
【24h】

Binary analysis for measurement and attribution of program performance

机译:二进制分析,用于衡量和评估计划绩效

获取原文

摘要

Modern programs frequently employ sophisticated modular designs. As a result, performance problems cannot be identified from costs attributed to routines in isolation; understanding code performance requires information about a routine's calling context. Existing performance tools fall short in this respect. Prior strategies for attributing context-sensitive performance at the source level either compromise measurement accuracy, remain too close to the binary, or require custom compilers. To understand the performance of fully optimized modular code, we developed two novel binary analysis techniques: 1) on-the-fly analysis of optimized machine code to enable minimally intrusive and accurate attribution of costs to dynamic calling contexts; and 2) post-mortem analysis of optimized machine code and its debugging sections to recover its program structure and reconstruct a mapping back to its source code. By combining the recovered static program structure with dynamic calling context information, we can accurately attribute performance metrics to calling contexts, procedures, loops, and inlined instances of procedures. We demonstrate that the fusion of this information provides unique insight into the performance of complex modular codes. This work is implemented in the HPCToolkit performance tools (http://hpctoolkit.org).
机译:现代程序经常采用复杂的模块化设计。结果,无法从孤立地归因于例程的成本中识别出性能问题。理解代码性能需要有关例程调用上下文的信息。在这方面,现有的性能工具不足。在源级别上赋予上下文相关性能的现有策略要么影响测量精度,要么与二进制文件过于接近,要么需要定制编译器。为了了解完全优化的模块化代码的性能,我们开发了两种新颖的二进制分析技术:1)对优化的机器代码进行动态分析,以使对动态调用上下文的成本进行最小程度的介入和准确分配; 2)对优化后的机器代码及其调试部分进行事后分析,以恢复其程序结构并重建其源代码的映射。通过将恢复的静态程序结构与动态调用上下文信息相结合,我们可以将性能指标准确地归因于调用上下文,过程,循环和过程的内联实例。我们证明,此信息的融合为复杂的模块化代码的性能提供了独特的见解。这项工作是在HPCToolkit性能工具(http://hpctoolkit.org)中实现的。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号