2015-03-23 2 views
2

Вот мой код:Сегментация Fault, когда я использую MPI_ALLREDUCE в простой программе

#include "mpi.h" 
#include <stdio.h> 
#include <stdlib.h> 
int main(int argc, char **argv) 
{ 
    int tmpv = 10, tmpvsum; 
    MPI_INIT(&argc, &argv); 
    printf("begin allreduce."); 
    MPI_REDUCE(&tmpv,&tmpvsum,1,MPI_INT,MPI_SUM,0,MPI_COMM_WORLD); 
    printf("tmpv : %4d",tmpvsum); 
    MPI_FINALIZE(); 
    return 0; 
} 

Я успешно скомпилирован с помощью следующей команды:

mpiicc -o test_reduce test_reduce.c 

Но когда я бегу, я постоянно получать ошибка сегментации. Я не вижу проблем с кодом.

ответ

1

Проблема заключается в том:

функция "MPI_REDUCE" должно быть написано как "MPI_Reduce".

Однако ни «mpicc», ни «mpiicc» не сообщают об этой проблеме при компиляции.

Смежные вопросы