CUDA与MPI结合,求助。
在学习MPI和CUDA的相关内容。使用的是vs2008,mpich2,cuda3.2
我只是想试一下两者的结合。编了很简单的程序。先是用CUDA vs Wizard创立了工程。将sample中的main改成cudaFun。另外创立了一个cpp用来写main在main中只是对mpi进行了初始化,用于显示主机个数,和主机的序号。
现在编译的时候发生了问题,会出现无法识别cuda函数调用的“<<<>>>"的问题。
我也试过直接将mpi的内容写入到cu文件中,但是编译的时候,关于mpicxx会出现很多no effect的警告。生成的exe只能直接运行,放入mpiexec中就无法运行了。
cpp的代码如下。cu的代码就是只将main改为了cudaFun并且将所需参数省去
#include <stdio.h>
#include <mpi.h>
#include "sample.cu"
int main(int argc, char *argv[])
{
int size, rank;
MPI_Init( &argc, &argv);
MPI_Comm_rank( MPI_COMM_WORLD, &rank);
MPI_Comm_size( MPI_COMM_WORLD, &size);
fprintf( stderr, "Processor %d of %d\n", rank, size);
cudaFun( );
MPI_Finalize();
return 0;
}