Revision [7509]

This is an old revision of MpiMpdRing made by ToBo on 2009-01-18 22:39:00.

 

MPD-Ring


1. Mit mehreren Rechnern im LAN


Ein Ring ist eine Verkettung von mehreren mpd-Prozessen, die jeweils einem Prozessor zugeordnet sind. Die Prozessoren können auch auf verschiedenen Rechnern verteilt sein.

Unbedingt die /etc/hosts auf allen Rechnern anpassen oder mit BIND arbeiten

Die Rechner


IBM 486 66 MHz
OrionPentium I, 133 MHz
Amygdala Pentium III (Coppermine) 667 MHz
ThunderbirdAthlon Thunderbird mit 1.4 GHz und später mit 1.5 GHz
MpdDCIntel Dual Core 2 GHz

mpdhosts2 ist eine Liste mit vier Rechnern (insgesamt fünf CPUs), die ich häufig für die Übungen genutzt habe.
Der 486er namens IBM ist nicht dabei, weil dieser Rechner wehen seiner langsamen 10Base-T-Verbindung und Leistungsfähigkeit eher gebremst hat.
mpdhosts2
MpiDC:2
Thunderbird:1
amygdala:1
Orion:1



Skript runmpd verwende ich gerne zum Start des MPD-Rings. Dabei muss die Host-Liste von oben als Parameter angegeben werden. War der Start erfolgreich, dann macht das Skript noch einen Test mit mpdringtest.
runmpd mpdhosts2
runmpd
#!/bin/bash
# Andreas Tobola
# Usage: mpdrun hostlist3
cd `dirname $0`
NUM_OF_HOSTS=`wc -l $1 | awk '{print $1}'`
mpdboot -v -n $NUM_OF_HOSTS -f $1 && mpdringtest 10



Wenn mpd nicht sauber beendet wurde und deshalb nicht starten will, dann diese zwei Befehle, notfalls auf allen Rechnern ausführen.
mpdallexit
mpdcleanup



Genteleman, please start your engines!
$ ./runmpd mpdhosts2
running mpdallexit on amygdala
LAUNCHED mpd on amygdala  via
RUNNING: mpd on amygdala
LAUNCHED mpd on MpiDC  via  amygdala
LAUNCHED mpd on Thunderbird  via  amygdala
LAUNCHED mpd on Orion  via  amygdala
RUNNING: mpd on MpiDC
RUNNING: mpd on Thunderbird
RUNNING: mpd on Orion
time for 10 loops = 0.0871088504791 seconds



2. Mit drei Rechnern im Internet


Hier versuche ich einen Server in 80 km Entfernung zusätzlich über das Internet über VPN (LinuxOpenVpn OpenVPN) in den MPD-Ring einzubinden.

mpdboot
running mpdallexit on amygdala
LAUNCHED mpd on amygdala  via
RUNNING: mpd on amygdala
LAUNCHED mpd on thalamus  via  amygdala
LAUNCHED mpd on IBM  via  amygdala
RUNNING: mpd on thalamus
RUNNING: mpd on IBM
time for 50 loops = 9.1834859848 seconds



mpiexec -n 1 -host amygdala ~/code/mpi/04_ring/ring : -n 1 -host thalamus ~/mpi/ring : -n 1 -host IBM thalamus ~/mpi/ring



Fehlermeldung auf allen Rechnern
(mpiexec 392): no msg recvd from mpd when expecting ack of request

no msg recvd from mpd when expecting ack of request

Geht nicht! Das muss ich noch genauer untersuchen!


3. MPD auf einem bestimmten Rechner testen


3.1Einen einzelnen mpd zum Testen starten


normal zum Testen
mpd


oder als Dämon
mpd -d



3.2mpd auf einem Rechner mit 4 CPUs einrichten


mpd --daemon --ncpus=4



3.3Weitere Parameter für mpd


echo gibt Informationen aus, wie z.B. die Portnummer
mpd --echo


--listenport=4991



Siehe auch
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki