4

开发一个基本的分析器,它将收集 Cray Chapel 中 GASNet 通信操作的开始和结束时间。想到的唯一想法是在 Chapel 通信函数中插入指令以获取函数调用时间。有没有办法在不弄乱语言源代码的情况下做到这一点?

4

1 回答 1

3

GASNet 具有强大的内置跟踪基础设施,可用于收集任何 GASNet 客户端的通信跟踪。它是通过使用 --enable-trace 配置 GASNet 来启用的。通过 --enable-stats 还可以使用统计收集功能。有关这些的更多信息,请参阅此处自述文件的“GASNet 跟踪和统计收集”部分:

https://bitbucket.org/berkeleylab/gasnet/overview

请注意,这些跟踪和统计功能主要是为调试 GASNet 和语言运行时系统而编写的,并且可能会带来显着的执行时间开销(跟踪情况下的 CPU 和文件 I/O)。此外,所有信息都将处于 GASNet 操作和内存位置级别,而不是高级语言。因此,它无需更改即可工作,并会为您提供大量信息,但它可能不适合您的教堂分析需求。

于 2014-04-13T06:21:38.943 回答