Geschrieben von Beat Rubischon (Link) am
Freitag, 6. Februar 2009, 14:30
aus dem *grosse-nummern* dept.
Wer erzählt da, IPv6 habe im Clussterumfeld noch nichts verloren? Irrtum. Ein kleines aber feines Projekt hat den ersten Schritt getan.
OpenMPI ist ein aktives Projekt mit dem Ziel einer möglichst universellen und freien MPI Implementation. Als Backend sind mittlerweile TCP, SCTP (nur in der Entwicklerversion), Myrinet MX und GM, Quadrics ELAN und die diversesten Infiniband Implementationen inklusive dem freien OFED unterstützt. Für den Programmierer bietet OpenMPI eine komplette MPI2 Implementation - ohne den bei der Referenzimplementation MPICH2 benötigten mpd starten zu müssen.
Das neueste OpenMPI 1.3 soll IPv6 supporten. Also kurzerhand bauen und benutzen:
beat@max:~/imb$ mpirun -v -np 2 -machinefile machinefile ./IMB-MPI1 PingPong
...
#---------------------------------------------------
# Benchmarking PingPong
# #processes = 2
#---------------------------------------------------
#bytes #repetitions t[usec] Mbytes/sec
0 1000 728.06 0.00
1 1000 736.10 0.00
2 1000 716.03 0.00
4 1000 735.74 0.01
8 1000 795.36 0.01
16 1000 872.63 0.02
32 1000 756.53 0.04
64 1000 827.69 0.07
128 1000 955.61 0.13
256 1000 1214.42 0.20
512 1000 1795.91 0.27
1024 1000 2656.47 0.37
2048 1000 3818.55 0.51
4096 1000 6272.73 0.62
8192 1000 9253.11 0.84
16384 1000 16675.76 0.94
32768 1000 31729.96 0.98
65536 640 68384.30 0.91
131072 320 126870.33 0.99
262144 160 249563.27 1.00
524288 80 491984.29 1.02
1048576 40 968248.96 1.03
2097152 20 1915566.95 1.04
4194304 10 3809785.01 1.05
OK, OK. Die Pingzeiten sind unter jeder Sau. Aber hey, das ist kein High Speed Interconnect mit < 1.2~µs Latency und > 3GBytes/s Throughput. Sondern ein homemade 100MBit Ethernet mit einem Cisco 836 dazwischen ;-)
.oO ( Ob Priska vielleicht doch recht hat, wenn sie jammert, das Netz sei zu langsam? *grübel* )
Aber viel interessanter - was geht über das Kabel?
max:~# tcpdump -i eth0 host 2001:8e0:1006:1:230:1bff:feb0:86f4
...
13:40:49.871193 IP6 max.0x1b.ch.40216 > tito.0x1b.ch.35787: P 90779:90805(26) ack 90761 win 1440 <nop,nop,timestamp 180253445 1802293704>
13:40:49.872370 IP6 tito.0x1b.ch.35787 > max.0x1b.ch.40216: P 90761:90787(26) ack 90805 win 179 <nop,nop,timestamp 1802293705 180253445>
13:40:49.872419 IP6 max.0x1b.ch.40216 > tito.0x1b.ch.35787: P 90805:90831(26) ack 90787 win 1440 <nop,nop,timestamp 180253445 1802293705>
13:40:49.873585 IP6 tito.0x1b.ch.35787 > max.0x1b.ch.40216: P 90787:90813(26) ack 90831 win 179 <nop,nop,timestamp 1802293707 180253445>
13:40:49.873634 IP6 max.0x1b.ch.40216 > tito.0x1b.ch.35787: P 90831:90857(26) ack 90813 win 1440 <nop,nop,timestamp 180253445 1802293707>
13:40:49.874807 IP6 tito.0x1b.ch.35787 > max.0x1b.ch.40216: P 90813:90839(26) ack 90857 win 179 <nop,nop,timestamp 1802293708 180253445>
Pures IPv6! *freu*
Permalink
|