带有MPI错误的Fortran
我正在使用MPI编写Fortran代码,并介绍以下MPI命令带有MPI错误的Fortran,fortran,mpi,Fortran,Mpi,我正在使用MPI编写Fortran代码,并介绍以下MPI命令 call MPI_Gather(nlocal,1,MPI_INTEGER,counts,1,MPI_INTEGER,0& &,comm_cart,ierror) 在特定的子例程中给出以下错误: This name does not have a type, and must have an explicit type. [MPI_INTEGER] 我知道编译器无法识别此代码的MPI部分
call MPI_Gather(nlocal,1,MPI_INTEGER,counts,1,MPI_INTEGER,0&
&,comm_cart,ierror)
在特定的子例程中
给出以下错误:
This name does not have a type, and must have an explicit type. [MPI_INTEGER]
我知道编译器无法识别此代码的MPI部分。但是,除Fortran MPI数据类型MPI INTEGER
外,所有其他相关变量,如nlocal、counts和comm\u cart
都可以识别。有人能说出我做错了什么吗
注意:编译器是“英特尔编译器”您必须告诉编译器有关MPI的内容(主要是变量) 现代的方式是引进
use mpi
在各个领域
在过去,它也是通过使用
include "mpif.h"
但这有几个缺点。也就是说,因为它与FORTRAN 77兼容,所以它没有为任何MPI子例程引入显式接口,因此错误检查不如使用MPI时彻底。现代方法将帮助您更好地保持代码的正确性
另一方面,如果您使用
use mpi
模块mpi
必须使用编译程序时使用的相同编译器(有时甚至使用相同版本)编译。如何在变量空间中包含mpi_整数?您应该始终显示更多代码,即,你所有的符号来自哪里?你的陈述放在哪里。否决票可能来自未能显示所有相关细节。这个问题本身是合理的。