HPC2009 - switch teszt

Ez itten egy ketto HP procurve 2910al-48G.

Az alabbi (egyszer hasznalatos) load generalo scripttel terheltem:


#!/bin/sh
MYIP=`/sbin/ifconfig eth1 | /usr/bin/awk '/inet addr:/{gsub(/^.*:/,"", $2); print $2}'`
PEER=`echo $MYIP | /usr/bin/awk -F. '{print $1 "." $2 "." $3 "." $4+1}'`
echo making floodping $MYIP '->' $PEER
while true; do ping -l 100000000 -c 100000000 -nf $PEER -s 1472 >/dev/null ; done &
while true; do ping -l 100000000 -c 100000000 -nf $PEER -s 1472 >/dev/null ; done &
while true; do ping -l 100000000 -c 100000000 -nf $PEER -s 1472 >/dev/null ; done &
while true; do ping -l 100000000 -c 100000000 -nf $PEER -s 1472 >/dev/null ; done &
while true; do ping -l 100000000 -c 100000000 -nf $PEER -s 1472 >/dev/null ; done &

Minden paratlan sorszamu node-on ez indult, tehat minden paratlan sorszamu node a nala egyel nagyobb sorszamu node-val vegzett pingpongot. 5 darab kellett belole, hogy meglegyen a gigabit.

Jelenthetem, hogy a switch ezen a 44 porton full duplex wirespeed, vagyis minden porton egyszerre be tud menni es ki tud jonni a gigabit.

Egy hibas kabel detektalva.

Hozzászólások

A hálózat tervezésénél gondolkoztatok a jumbo frame-eken?

Amikor 2006-ban Conrad Steenberg nagyvonalúságának köszönhetően alkalmam nyílott az udp_copy2-t tesztelni két caltech-es node között, egy közvetlen 10GbE linken, akkor elkönyveltem magamban, hogy "HPC = 10GbE = jumbo frames". Szabad érdeklődni (akár magánban is), hogy ti miket fontoltatok meg ezzel kapcsolatban? Köszönöm.

(A teszt eredményét inkább hagyjuk: az udp_copy2 "rendkívül CPU igényes", hogy úgy mondjam :) Míg a netcat (TCP-n) 493 MB/s-t ért el, mire egy magot csontig kihúzott, addig az udp_copy2 csak 286 MB/s-t. Nem arra készült, na :))

cpu igeny:
a cpu power/network bw arany idobeli alakulasa nem egy trivialis dolog.
Mert a cpu power is exponencialisan no, es az atlag elerheto net bw is exponencialisan no, a hanyadosuk is exponencialis... azt hiszem a nagy pc-cpu boom idoszakban (1995-2002) amikor is a 3 eves cpu mar hasznalhatatlan ocskavas volt, az atlag elerheto network savszelesseg nagyobb utemben nott, mint a cpu, ennelfogva az egy csomagra juto cpu teljesitmeny folyamatosan csokkent dacara a cpu-k fejlodesenek.

najo, ez csak filozofalgatas volt

ket switch van, ket halozat van

az egyik a CN-ek kozotti mpi forgalomnak dedikalva, szeretnem rajta bekapcsolni a jumbo framet, csak eddig meg nem jutottam el odaig.

A masik pedig rlogin/rsh/dhcp/tftp(pxeboot)/nfs(root,user) forgalomra van.
Amikor a CN bootol, akkor a kartyara egetett pxeboot (tftpclient,dhcpclient) az csak 1500 byte MTU-t tud. Tehat, a boot idoszaka alatt a fejgepen 1500 legyen az MTU. es akkor ha felbootoltak a gepek, hogyan valtsam menet kozben at 9000 -re? ezen meg nem sikerult urra lenni

jo kerdes ez a 10g

vagy inkabb mondjuk ugy, hogy az interconnect modja a kerdes. A 10g valahol a qdr infiniband es a gigabit eth kozott teljesit.

Ha veszunk egy ateresztokepesseg (skalazodasi) grafikont, peldaul a foobar alkalmazasra,

gbit eth cluster
nodecount troughput
1 0.7
4 3.1
7 5.4
10 7.7
13 9.9
16 12.0
19 14.0
22 15.9
25 17.6
28 19.2
31 20.6
34 21.9
37 22.9
40 23.7
43 24.3
46 24.8
49 24.9

infiniband 4xqdr cluster
1 0.7
4 3.1
7 5.4
10 7.8
13 10.1
16 12.4
19 14.7
22 16.9
25 19.1
28 21.2
31 23.3
34 25.4
37 27.4
40 29.3
43 31.2
46 33.0
49 34.7

jol lathato, hogy az infiniband cluster sokkal jobban teljesit (kesobb van a telites (nem 50 node-nal, hanem 100-nal) sokkal hosszabb a linearisan skalazodo szakasz, igy sokkal nagyobb az eredo teljesitmeny is.

viszont ezek a grafikonok nem tukrozik a valosagot. A valosagban az elso oszlopban a penz van, nem a nodecount.
Itt egy egyesitett tablazat, hogyha X zseton van, abbol mekkora clustert lehet venni gbit eth switcchel, es mekkorat IB eseten, igy mekkora a gbit eth troughput (adott zsetonhoz tartozo) es mekkora az IB throughput (adott zsetonhoz tartozo)


$$ IB# gbit# IBthrughput gbitthroughput
  4  2   4 1.5705350   3.1333300
 10  5  10 3.9229500   7.7254225
 16  8  16 6.2666600  12.0438400
 22 11  22 8.5964500  15.9355975
 28 14  28 10.9071550 19.2628300
 34 17  34 13.1936450 21.9076650
 40 20  40 15.4508450 23.7764100
 46 23  46 17.6737350 24.8028675
 52 26  52 19.8573900 25.0
 58 29  58 21.9969550 25.0
 64 32  64 24.0876800 25.0
 70 35  70 26.1249250 25.0
 76 38  76 28.1041650 25.0
 82 41  82 30.0210050 25.0
 88 44  88 31.8711950 25.0
 94 47  94 33.6506200 25.0
100 50 100 35.3553350 25.0

es egybol az derul ki, hogyha nincs nagyon-nagyon sok penzed, akkor az gbith clusterrel sokkal jobban jarsz a foobar program futtatasahoz.

(a peldagrafikonokhoz a skalazodasi fuggvenyt a sinus szolgaltatta)

volt itt regebben egy hozzaszolo, akinek az a velemenye volt, hogy a HPC-hez nem art egy IB (szinte kotelezo) es midnen node-ban tengernyi memoria, es mindenhova ultragyors ssd az atmeneti adatoknak. Tenyleg, de jo lenne. Csak eppen a kerdes soha nem az, hogy kell-e ssd (igen vagy nem) hanem az, hogy mi a jobb (10 node+10 ssd vagy 15node+0ssd)