2011-09-15 8 views
6

내가 코어 i7 CPU (쿼드 코어)를 통해 실행 MPI, 내 코드입니다, 그러나 문제는 그것이 가지고 1 개 프로세서 CPU, 아래에서 실행중인 것을하는 것으로 저를 보여줍니다 4.MPI 프로세서 수? 다음

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

    MPI_Init(&argc, &argv); 

    MPI_Comm_rank(MPI_COMM_WORLD, &rank); 
    MPI_Comm_size(MPI_COMM_WORLD, &size); 

    printf("Hello world! I am %d of %d\n", rank, size); 

    MPI_Finalize(); 

    return 0; 
} 

문제가 MPI 라이브러리 또는 sth에 있는지 궁금합니다. 여기

은 저를 보여, 그 결과입니다 :

Hello world! I am 0 of 1 

추가 정보 : 윈도우 7 - 전문 64

+0

어떻게 프로그램을 실행하고 있습니까? –

+1

코드 실행 방법을 추가 할 수 있습니다. 일반적으로 MPI 실행 파일은 'mpirun -np 4 mympiexecutable'과 같은 명령을 사용하여 4 개의 프로세서에서 실행되도록해야합니다. 예를 들어 실제로는 아닙니다. Windows MPI 버전을 알고 있어야합니다. – Aesin

답변

9

프리마가 직접 프로그램을 실행하는 것 같습니다 일견. mpiexec -n 2 또는 -n 4을 사용해 보셨습니까?

+0

그래, 그랬어, 잘 작동하지만 듀얼 코어 CPU를 가지고 예를 들어, 당신은 2 결과를 얻을 것이라고 말했다 책에서 그 예제를 복사했습니다. 그래서 여기에 쿼드 코어 CPU가있어 결과적으로 4를 얻어야합니다. – Gabriel

+0

명시 적으로 mpi 래퍼를 사용하지 않고 실행하면 단일 코어로 간주되어 실행됩니다. –

+0

더 설명 할 수 있습니까? 방법? – Gabriel