Evo ovako: Testiram neki komponent koji vec radi ali ga treba optimirati za vise procesora. Nasao sam i druge varijante ali hocu takodje da isprobam i sa MPI-om. Izabrao sam MPICH implementaciju, jer mi se cinila najpopularnija, ako ko ima iskustva sa drugom pokusao bi i tu. U glavnom je problem u tome sto sve radi kako treba ali ipak ne. Nasao sam sledeci jednostavan primjer da testiram dali stvari rade kako treba:
Na prvi pogled mi je izgledao kao da sve radi kako treba, ali u nastavku teksta u kojem sam nasao primjer bio je naveden i ocekivani output:
Kod mene je na veliko razocarenje samo pisalo jednom "Hello World!" znaci problem je u tome sto umjesto na svim procesorima da kod bude posebno izvrsen, kod mene je to slucaj samo na jednom od dva CPU-a (Autor artikla iz kojeg sam uzeo kod imao je znaci 4 CPU-a :), da se ne zbunite). Pomoc zelim znaci u postavljanju kompilera, koji treba da kompajlira kod tako da se izvrsi na oba CPU-a. Za kraj samo da kazem da ovo radim u Visual Studio 2005 ;)
Nadam se da neko ima iskustva i da moze pomoci.
Hvala unaprijed
Code:
#include "stdafx.h"
#undef SEEK_SET
#undef SEEK_END
#undef SEEK_CUR
#include <stdio.h>
#include <mpi.h>
void main (int argc, char *argv[]) {
int err;
err = MPI_Init(&argc, &argv);
printf("Hello world!\n");
err = MPI_Finalize();
}
#include "stdafx.h"
#undef SEEK_SET
#undef SEEK_END
#undef SEEK_CUR
#include <stdio.h>
#include <mpi.h>
void main (int argc, char *argv[]) {
int err;
err = MPI_Init(&argc, &argv);
printf("Hello world!\n");
err = MPI_Finalize();
}
Na prvi pogled mi je izgledao kao da sve radi kako treba, ali u nastavku teksta u kojem sam nasao primjer bio je naveden i ocekivani output:
Citat:
Hello world!
Hello world!
Hello world!
Hello world!
Hello world!
Hello world!
Hello world!
Kod mene je na veliko razocarenje samo pisalo jednom "Hello World!" znaci problem je u tome sto umjesto na svim procesorima da kod bude posebno izvrsen, kod mene je to slucaj samo na jednom od dva CPU-a (Autor artikla iz kojeg sam uzeo kod imao je znaci 4 CPU-a :), da se ne zbunite). Pomoc zelim znaci u postavljanju kompilera, koji treba da kompajlira kod tako da se izvrsi na oba CPU-a. Za kraj samo da kazem da ovo radim u Visual Studio 2005 ;)
Nadam se da neko ima iskustva i da moze pomoci.
Hvala unaprijed