Fortran和MPI的优秀分析器

时间:2013-08-12 16:04:40

标签: profiling fortran mpi profiler

你使用哪个探查器用于带有MPI的Fortran代码库? gprof似乎没有正常工作。 Sun Studio Analyzer仅返回C / C ++系统调用的计时,并且不显示任何fortran函数。

6 个答案:

答案 0 :(得分:9)

有许多专门用于Parallel / MPI程序的性能分析工具,例如:

  • Score-P,可与多种不同的分析工具配合使用,例如CubeVampir
  • HPCToolkit仅使用抽样,因此您无需重新编译应用程序
  • Tau

起初它们使用起来可能并不简单,但它们为调查并行应用程序的性能提供了更多帮助。

答案 1 :(得分:3)

当提问者说" gprof似乎没有正常工作时,或许他指的是N MPI进程可能会破坏gmon.out文件的事实。在这种情况下,(未记录的)GMON_OUT_PREFIX环境变量可能会使gprof更有用:

$ export GMON_OUT_PREFIX=gmon.out
$ mpiexec -np 4 cpi

答案 2 :(得分:2)

Allinea MAP是一个简单明了但非常强大的分析器。

它旨在显示Fortran,C和C ++ MPI应用程序中的性能问题,并且只需很少的工作就可以开始并进行分析。

它是图形化的,并且与源代码浏览器集成,可以显示针对代码行的性能,并且能够分析不良的MPI行为,糟糕的工作平衡或不良的矢量化。

我是产品背后的团队之一,所以有点偏颇。它是商业性的 - 网站上有评估许可证。

答案 3 :(得分:0)

gprof是Fortran和其他基于GNU的编译器的优秀分析器。

答案 4 :(得分:0)

您可以使用Intel Trace analyzer配置MPI通信和Intel VTune以获取单个MPI任务的配置文件。这两种软件都在英特尔网站上广泛记录。

答案 5 :(得分:0)

我想再添加两个分析器:(1) mpiP 是一个轻量级分析器,可以生成文本输出,但只测量MPI函数。 (2) Scalasca - 这会产生一个复杂的输出,它也可以指向同步不平衡(延迟发送器/延迟接收器)(与TAU相反,它不指向同步不平衡)。