Articles of mpi

Communiquer des données avec une valeur `count` proche de` INT_MAX`

Les API d’interface de passage de messages utilisent toujours int comme type pour les variables de count . Par exemple, le prototype de MPI_Send est: int MPI_Send(const void* buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm); Cela peut poser problème si le nombre d’éléments à envoyer ou à recevoir augmente, voire même […]

Comment écrire un wrapper MPI pour un chargement dynamic

Étant donné que MPI n’offre pas de compatibilité binary, mais uniquement la compatibilité de source, nous sums obligés d’expédier notre code source de solutionneur aux clients pour qu’ils utilisent notre solution de résolution avec leur version préférée de MPI. Nous avons atteint le point où nous ne pouvons plus offrir de code source. En conséquence, […]

Comment obtenir le nombre de machine physique dans MPI

Je peux utiliser MPI_Comm_size pour obtenir le nombre total de processeurs. Mais comment puis-je obtenir le nombre de machine physique réelle?

MPI masortingce-vecteur-multiplication renvoie parfois des valeurs parfois étranges

J’ai le code suivant: //Start MPI… MPI_Init(&argc, &argv); int size = atoi(argv[1]); int delta = 10; int rnk; int p; int root = 0; MPI_Status mystatus; MPI_Comm_rank(MPI_COMM_WORLD, &rnk); MPI_Comm_size(MPI_COMM_WORLD, &p); //Checking compatibility of size and number of processors assert(size % p == 0); //Initialize vector… double *vector = NULL; vector = malloc(size*sizeof(double)); double *masortingx = […]

Erreur OpenMPI 1.4.3 mpirun hostfile

J’essaye de lancer un programme MPI simple sur 4 nœuds. J’utilise OpenMPI 1.4.3 sous Centos 5.5. Lorsque je soumets la commande MPIRUN avec le fichier hôte / machine, je ne reçois aucune sortie, je reçois un écran vide. Par conséquent, je dois tuer le travail. . J’utilise la commande suivante: mpirun –hostfile hostfile -np 4 […]

MPI ouvert – mpirun se termine avec une erreur sur un programme simple

J’ai récemment installé OpenMPI sur mon ordinateur et lorsque j’essaie d’exécuter un programme simple Hello World, il se ferme avec l’erreur suivante: ——————————————————- Primary job terminated normally, but 1 process returned a non-zero exit code.. Per user-direction, the job has been aborted. ——————————————————- C’est le code source du programme: #include #include int main(int argc, char […]

Problème de compilation MPICH2 avec Cygwin

Tentative de compilation de MPICH2 sur une machine Windows à l’aide de Cygwin. Un peu d’informations pertinentes $ uname -> CYGWIN_NT-6.1 $ gcc –version -> gcc (GCC) 3.4.4 (spécial cygming, gdc 0.12, utilisant dmd 0.125) Copyright (C) 2004 Free Software Foundation, Inc. Il s’agit d’un logiciel libre; voir la source pour les conditions de copie. […]

MPI: Processus en aidant un autre à la fin de ses travaux

Voici mon problème: Etant donné un intervalle initial [a, b] pour mettre en parallèle et en supposant qu’il y ait des processus plus rapides que d’autres, je voudrais faire un processus que je vais “aider” un autre (j) quand il termine son bloc (travail) case signifie diviser également le bloc de processus j (celui qui […]

Comment les descripteurs sont-ils dissortingbués après MPI_Comm_split?

Dis, j’ai 8 processus. Lorsque je fais ce qui suit, le communicateur MPU_COMM_WORLD sera scindé en deux communicateurs. Les processus avec des identifiants pairs appartiendront à un communicateur et les processus avec des identifiants impairs appartiendront à un autre communicateur. color=myid % 2; MPI_Comm_split(MPI_COMM_WORLD,color,myid,&NEW_COMM); MPI_Comm_rank( NEW_COMM, &new_id); Ma question est la suivante: où se situe […]

Erreur: libtool – lors de la compilation d’un programme MPI

J’utilise OpenSuse Leap et j’ai installé openMPI pensait-il, YaST. En which mpirun commande which mpirun je reçois /usr/lib64/mpi/gcc/openmpi/bin/mpirun et en exécutant which mpicc je reçois /usr/bin/mpicc . Comment s’assurer d’abord que OpenMPI est correctement installé? Deuxièmement, j’ai un monde simple bonjour je suis processus X et en cours d’exécution mpicc hello.c j’obtiens cette sortie gcc: […]