【发布时间】:2012-12-08 19:24:55
【问题描述】:
使用“-traceback”编译的 ifort 仅打印 10 行,但分段发生在至少 10 层的内部子程序中。因此,不会显示发生段错误的确切例程。
它的 MPI 程序和运行 gdb 不是一个可行的选择..
有什么帮助吗?
thnx
【问题讨论】:
-
Fortran 程序中段错误的两个常见原因是 (i) 试图寻址数组边界之外的数组元素和 (ii) 过程实际参数和虚拟参数不匹配。如果您使用正确的选项进行编译,
ifort通常可以诊断这两个问题(有关它们的含义,请参阅文档)。如果做不到这一点,并且将使用gdb的建议放在一边,您是否安装了 TotalView 或 DDT 两者都可用于调试 MPI 程序? -
我只知道 (i) 我添加了“-check all”(实际上是“-check bounds”)但找不到任何问题。它实际上与(ii)有关。谢谢!
标签: segmentation-fault gdb stack-trace intel-fortran traceback