Frage

Ich versuche, einen MPI Cluster einzurichten. Aber ich habe das Problem, dass die Anzahl der CPUs in die Datei mpd.conf Datei hinzugefügt wird nicht korrekt verwendet. Ich habe drei Ubuntu-Servern. opteron mit 48 Cores calc1 mit 8 Cores calc2 mit 8 Cores.

Meine mpd.hosts sieht aus wie:
opteron:46
calc1:6
calc2:6

Nach dem Booten (mpdboot -n 3 -f mpd.hosts) das System läuft. mpdtrace. -> alle drei von ihnen aufgeführt sind,

Aber ein Programm läuft wie „mpiexec -n 58 raxmlHPC-MPI ...“ führt dazu, dass calc1 und calc2 get zu viele Arbeitsplätze und opteron bekommt zu wenig zugleich. Was mache ich falsch?

Viele Grüße

Bjoern

War es hilfreich?

Lösung

fand ich eine Abhilfe. Ich verwendet, um die zusätzlichen Parameter „-machinefile /path/to/mpd.hosts“ für den mpiexec Befehl. Und nun, alle Knoten ordnungsgemäß ausgeführt wird. Ein Problem, das ich bekam, war, dass ich habe folgende Fehlermeldung:

... MPIU_SHMW_Seg_create_attach_templ (671): open fehlgeschlagen - Keine solche Datei oder das Verzeichnis ...

Um es zu beheben, musste ich die Umgebungsvariable MPICH_NO_LOCAL=1 einstellen

Andere Tipps

Wie Sie herausgefunden, müssen Sie beide übergeben Sie die machinefile zu mpdboot und mpiexec zu verwenden, um pro-Host-Prozess zählt. Das „offene fehlgeschlagen“ Problem ist ein bekannter Fehler in MPD, den Prozess-Manager Sie verwenden. Beachten Sie, dass die MPICH_NO_LOCAL=1 Abhilfe wird funktionieren, aber wahrscheinlich in einer großen Leistungseinbuße für Intranode Kommunikation zur Folge hat.

Sie verwenden klar MPICH2 (oder ein MPICH2 Derivat), aber es ist nicht klar, welche Version Sie verwenden. Wenn Sie können, würde ich dringend ein Upgrade auf beide MPICH2 1.2.1p1 oder (besser noch) 1.3.1 empfehlen. Beiden Versionen enthalten einen neuen Prozess-Manager namens hydra das ist viel schneller und robuster. In 1.3.1 hydra ist der Standard-Prozess-Manager. Sie stellen keine mpdboot Phase benötigen, und unterstützt eine $HYDRA_HOST_FILE Umgebungsvariable so, dass Sie die Maschine Datei nicht auf jedem mpiexec angeben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top