<p>Performance analysis is a crucial functionality required in the domain of high-performance computing for effective performance optimization. However, collecting performance traces of parallel programs often incurs significant overhead due to the need to trace numerous performance metrics such as function timestamps and hardware counters. Such overhead prohibits performance analysis tools from being practically applied to large-scale parallel programs. To mitigate the above overhead, existing tools typically require program pre-execution to identify hotspot functions for subsequent trace collection, which can effectively reduce the overhead. However, for large-scale performance analysis, such an approach still imposes substantial and unacceptable execution overhead, due to an additional profiling run to obtain a list of hotspot functions for further performance tracing and analysis. To address such drawback, we propose <i>Hotspy</i>, a performance analysis tool for identifying hotspot functions based on graph neural networks. <i>Hotspy</i> performs static analysis at LLVM intermediate representation level and predicts potential hotspot functions for instrumentation, without program pre-execution. The experimental results demonstrate that <i>Hotspy</i> can significantly reduce the overhead of hotspot function identification with notable prediction accuracy.</p>

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Hotspy: identifying performance hotspot with graph neural network based static analysis

  • Da Huo,
  • Xin You,
  • Zhibo Xuan,
  • Hailong Yang,
  • Zhongzhi Luan,
  • Depei Qian

摘要

Performance analysis is a crucial functionality required in the domain of high-performance computing for effective performance optimization. However, collecting performance traces of parallel programs often incurs significant overhead due to the need to trace numerous performance metrics such as function timestamps and hardware counters. Such overhead prohibits performance analysis tools from being practically applied to large-scale parallel programs. To mitigate the above overhead, existing tools typically require program pre-execution to identify hotspot functions for subsequent trace collection, which can effectively reduce the overhead. However, for large-scale performance analysis, such an approach still imposes substantial and unacceptable execution overhead, due to an additional profiling run to obtain a list of hotspot functions for further performance tracing and analysis. To address such drawback, we propose Hotspy, a performance analysis tool for identifying hotspot functions based on graph neural networks. Hotspy performs static analysis at LLVM intermediate representation level and predicts potential hotspot functions for instrumentation, without program pre-execution. The experimental results demonstrate that Hotspy can significantly reduce the overhead of hotspot function identification with notable prediction accuracy.