相关疑难解决方法(0)

MPI_Isend()中的MPI分段错误

我是MPI编程的新手!我试图测量处理器之间的点对点通信带宽以实现实用性.但是现在我遇到了分段错误!我不明白为什么会这样.我也在ubuntu上尝试了valgrind,但不知道.所以也许有人可以帮助我:D

感谢快速响应,但这并没有改变问题:(我只是更新了错误!

这里是源代码

#include "mpi.h"
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[]){

 int myrank, size;
 MPI_Init(&argc, &argv);
 MPI_Comm_rank(MPI_COMM_WORLD, &myrank);
 MPI_Comm_size(MPI_COMM_WORLD, &size);

 int *arraySend = (int *)malloc(25000*sizeof(int));
 int *arrayRecv = (int *)malloc(25000*sizeof(int));
 double startTime = 0.0, endTime = 0.0;
 MPI_Status status,statusSend, statusRecv;
 MPI_Request requestSend, requestRecv;

 if(size != 2){
   if(myrank == 0){
       printf("only two processors!\n");
       MPI_Finalize();  
       return 0;
    }
 }

 if(myrank == 0){
     startTime = MPI_Wtime();
     MPI_Send(&arraySend, 25000, MPI_INT, 1, 0,MPI_COMM_WORLD);
 }else{
     MPI_Recv(&arrayRecv, 25000, MPI_INT, 0, 0, MPI_COMM_WORLD, &status);
 } …
Run Code Online (Sandbox Code Playgroud)

c debugging mpi segmentation-fault

5
推荐指数
1
解决办法
1万
查看次数

在我的笔记本电脑中运行MPI代码

我是并行计算世界的新手.你能告诉我是否有可能运行c ++代码在我的笔记本电脑中使用双核心的MPI例程,或者有没有任何模拟器/模拟器这样做?

core mpi

4
推荐指数
1
解决办法
3205
查看次数

MPI 中的 GDB 调试器

我只是不知道使用 GDB 运行多个进程的命令。以下不起作用。

r -np 64 ./a.out -gdb
Run Code Online (Sandbox Code Playgroud)

抱歉,这看起来很简单。但是我在网上没有找到很多关于使用 gdb 在 MPI 中调试的有用文档。

fortran gdb mpi

1
推荐指数
1
解决办法
2010
查看次数

标签 统计

mpi ×3

c ×1

core ×1

debugging ×1

fortran ×1

gdb ×1

segmentation-fault ×1