2010-04-19 6 views
0

Quelqu'un sait-il comment utiliser MS_MPI dans mon projet VC++ MFC? J'ai déjà un gros projet MFC et je veux seulement utiliser le traitement parallèle dans une partie de celui-ci avec MPI. (Je sais comment utiliser MPI dans un code séparé, mais je ne sais pas comment l'intégrer avec mon projet VC++ MFC)Utilisation de MPI sous un projet VC++ MFC?

Répondre

0

Vous n'êtes pas sûr de MS_MPI, mais vous voulez consulter le guide de documentation de MPICH2 Windows à l'adresse URL en bas. Applications MPI avec interface utilisateur graphique De nombreux utilisateurs de machines Windows souhaitent créer des applications graphiques qui sont également des applications MPI . Ceci est tout à fait acceptable tant que l'application suit les règles de MPI. MPI Init doit être appelé avant toute autre fonction MPI et doit être appelé peu après le démarrage de chaque processus. Les processus doivent être démarrés avec mpiexec mais ils ne sont pas requis pour être des applications console. Le seul hic, c'est que les applications MPI sont cachées à la vue, de sorte que les fenêtres qu'une application utilisateur affiche ne pourront pas être vues. mpiexec dispose d'une option permettant aux processus MPI de la machine locale d'afficher des interfaces graphiques. Ajoutez -localroot à la commande mpiexec à pour activer cette fonctionnalité. Mais même avec cette option, toutes les interfaces graphiques des processus sur les machines distantes seront masquées. La seule application GUI que MPICH2 ne peut pas gérer par défaut serait donc une application de type mur vidéo. Mais cela peut être fait en exécutant smpd.exe à la main sur chaque machine au lieu de l'installer en tant que service. Connectez sur chaque machine et exécutez "smpd.exe -stop" pour arrêter le service, puis exécutez "smpd.exe -d 0" pour redémarrer le smpd. Tant que ce processus est en cours d'exécution, vous serez en mesure d'exécuter des applications où chaque processus est autorisé pour afficher les interfaces graphiques.

: http://www.mcs.anl.gov/research/projects/mpich2/documentation/files/mpich2-1.2.1-windevguide.pdf

0

C'est possible. Vous l'utilisez de la même manière que tout autre projet MPI.

En général, vous pouvez lier à toute bibliothèque C++ à partir d'un projet MFC. MFC est juste un ensemble de bibliothèques et ne vous empêche pas d'utiliser d'autres bibliothèques C++.

+0

Oui, cela est vrai, mais je ne sais pas comment modifier les propriétés de débogage, car pour MPI j'utilise débogueur MPI_Cluster, mais projet MFC ne fonctionne pas avec elle – Mike

Questions connexes