HP DL380G4 vs. Sun V20z

Címkék

Trey AMD64-es tesztjén felbuzdulva összehasonlítottam, hogy mennyi ideig tart a FreeBSD buildworld egy HP DL380G4 (2x3,6 GHz Xeon/800 FSB, 2 GB memória) és egy Sun V20z (2x2,4 GHz Opteron 250/800 MHz FSB, 4 GB memória) gépen.

Mindkét számítógép FreeBSD/AMD64-et futtatott és a mai legfrissebb RELENG_5 branchből fordította le azt a 400 MB-nyi forrást, amely a FreeBSD userlandjét képezi.

Lássuk:


Gépmake buildworldmake buildworld -j2make buildworld -j4make buildworld -j8
HP DL380G431:24.3219:12.9917:36.0917:44.53
Sun V20z27:53.6615:55.2815:57.8616:16.16

Az első oszlop az egy, a második a kettő, majd négy és nyolc szálon történő fordításhoz tartozó teljes időszükségletet mutatja.

Jól látható, hogy a 2,4 GHz-es Opteron minden esetben hamarabb végez, mint a 3,6 GHz-es Xeon. Utóbbi vélhetően a hyperthreading technológiának köszönhetően a két és négyszálú fordítás között tudott még javítani, ellenben az Opteronnal, amely ebben az esetben némileg lassabban végzett.

A nyolc szálon történő fordítás mindkét rendszer esetében hosszabb futási időket eredményezett, mint a négy szál esetében.

Részletes eredmények:

HP DL380G4:

time make buildworld

1556.248u 430.590s 31:24.32 105.4% 4254+3056k 1203+3291io 349pf+0w

time make buildworld -j2

2313.780u 791.307s 19:12.99 269.3% 4256+2921k 1306+3271io 337pf+0w

time make buildworld -j4

2637.286u 926.865s 17:36.09 337.4% 4270+2943k 1293+3415io 337pf+0w

time make buildworld -j8

2628.969u 952.349s 17:44.53 336.4% 4257+2916k 1292+3318io 337pf+0w

Sun V20z:

time make buildworld

1347.198u 326.745s 27:53.66 100.0% 4350+3265k 24003+3276io 1336pf+0w

time make buildworld -j2

1348.194u 432.319s 15:55.28 186.3% 4270+3164k 1607+3516io 337pf+0w

time make buildworld -j4

1360.046u 453.219s 15:57.86 189.3% 4265+3140k 2146+3322io 337pf+0w

time make buildworld -j8

1359.206u 462.522s 16:16.16 186.6% 4256+3128k 1611+3236io 337pf+0w

HP DL380G4 dmesg:

Copyright (c) 1992-2005 The FreeBSD Project.

Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994

The Regents of the University of California. All rights reserved.

FreeBSD 5.3-STABLE #4: Wed Feb 16 09:08:18 CET 2005

root@helen:/usr/obj/usr/src/sys/HELEN

Timecounter "i8254" frequency 1193182 Hz quality 0

CPU: Intel(R) Xeon(TM) CPU 3.60GHz (3600.15-MHz K8-class CPU)

Origin = "GenuineIntel" Id = 0xf41 Stepping = 1

Features=0xbfebfbff

Features2=0x659d,MON,DS_CPL,EST,TM2,CNTX-ID,CX16,>

AMD Features=0x20100800

Hyperthreading: 2 logical CPUs

real memory = 2147430400 (2047 MB)

avail memory = 2065154048 (1969 MB)

ACPI APIC Table:

FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs

cpu0 (BSP): APIC ID: 0

cpu1 (AP): APIC ID: 1

cpu2 (AP): APIC ID: 6

cpu3 (AP): APIC ID: 7

ioapic0 irqs 0-23 on motherboard

ioapic1 irqs 24-47 on motherboard

ioapic2 irqs 48-71 on motherboard

ioapic3 irqs 72-95 on motherboard

ioapic4 irqs 96-119 on motherboard

acpi0: on motherboard

acpi0: Power Button (fixed)

Timecounter "ACPI-safe" frequency 3579545 Hz quality 1000

acpi_timer0: 24-bit timer at 3.579545MHz> port 0x908-0x90b on acpi0

cpu0: on acpi0

cpu1: on acpi0

cpu2: on acpi0

cpu3: on acpi0

pcib0: on acpi0

pci0: on pcib0

pcib1: at device 2.0 on pci0

pci2: on pcib1

pcib2: at device 0.0 on pci2

pci3: on pcib2

bge0: mem 0xfddf0000-0xfddfffff irq 25 at device 1.0 on pci3

miibus0: on bge0

brgphy0: on miibus0

brgphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseTX, 1000baseTX-FDX, auto

bge0: Ethernet address: 00:0f:20:f9:ef:1b

bge1: mem 0xfdde0000-0xfddeffff irq 26 at device 1.1 on pci3

miibus1: on bge1

brgphy1: on miibus1

brgphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseTX, 1000baseTX-FDX, auto

bge1: Ethernet address: 00:0f:20:f9:ef:1a

pcib3: at device 0.2 on pci2

pci4: on pcib3

ciss0: port 0x4000-0x40ff mem 0xfde80000-0xfdebffff,0xfdef0000-0xfdef1fff irq 51 at device 3.0 on pci4

pcib4: at device 6.0 on pci0

pci5: on pcib4

pcib5: at device 0.0 on pci5

pci6: on pcib5

pcib6: at device 0.2 on pci5

pci10: on pcib6

pcib7: at device 1.0 on pci10

pci11: on pcib7

ciss1: port 0x5000-0x50ff mem 0xfdf80000-0xfdfbffff,0xfdff0000-0xfdff1fff irq 97 at device 4.0 on pci11

pci0: at device 29.0 (no driver attached)

pci0: at device 29.1 (no driver attached)

pci0: at device 29.2 (no driver attached)

pci0: at device 29.3 (no driver attached)

pci0: at device 29.7 (no driver attached)

pcib8: at device 30.0 on pci0

pci1: on pcib8

pci1: at device 3.0 (no driver attached)

pci1: at device 4.0 (no driver attached)

pci1: at device 4.2 (no driver attached)

isab0: at device 31.0 on pci0

isa0: on isab0

atapci0: port 0x500-0x50f,0x376,0x170-0x177,0x3f6,0x1f0-0x1f7 at device 31.1 on pci0

ata0: channel #0 on atapci0

ata1: channel #1 on atapci0

acpi_tz0: on acpi0

atkbdc0: port 0x64,0x60 irq 1 on acpi0

atkbd0: flags 0x1 irq 1 on atkbdc0

kbd0 at atkbd0

sio0: port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0

sio0: type 16550A

fdc0: port 0x3f2-0x3f5 irq 6 drq 2 on acpi0

fd0: 1440-KB 3.5" drive> on fdc0 drive 0

orm0: at iomem 0xee000-0xeffff,0xc8000-0xcbfff,0xc0000-0xc7fff on isa0

sc0: at flags 0x100 on isa0

sc0: VGA 16 virtual consoles, flags=0x300>

sio1 at port 0x2f8-0x2ff irq 3 on isa0

sio1: type 16550A

vga0: at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0

Timecounters tick every 1.000 msec

acd0: DVDROM at ata0-master PIO4

da0 at ciss0 bus 0 target 0 lun 0

da0: Fixed Direct Access SCSI-0 device

da0: 135.168MB/s transfers

da0: 34727MB (71122560 512 byte sectors: 255H 32S/T 8716C)

da1 at ciss1 bus 0 target 0 lun 0

da1: Fixed Direct Access SCSI-0 device

da1: 135.168MB/s transfers

da1: 560039MB (1146960112 512 byte sectors: 255H 63S/T 65535C)

SMP: AP CPU #1 Launched!

SMP: AP CPU #3 Launched!

SMP: AP CPU #2 Launched!

Mounting root from ufs:/dev/da0s1a

Sun V20z dmesg:

Copyright (c) 1992-2005 The FreeBSD Project.

Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994

The Regents of the University of California. All rights reserved.

FreeBSD 5.4-PRERELEASE #0: Fri Mar 4 13:35:35 CET 2005

root@v20z:/usr/obj/usr/src/sys/SMP

Timecounter "i8254" frequency 1193182 Hz quality 0

CPU: AMD Opteron(tm) Processor 250 (2388.88-MHz K8-class CPU)

Origin = "AuthenticAMD" Id = 0xf5a Stepping = 10

Features=0x78bfbff

AMD Features=0xe0500800

real memory = 4227268608 (4031 MB)

avail memory = 4080463872 (3891 MB)

ACPI APIC Table:

FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs

cpu0 (BSP): APIC ID: 0

cpu1 (AP): APIC ID: 1

MADT: Forcing active-low polarity and level trigger for SCI

ioapic0 irqs 0-23 on motherboard

ioapic1 irqs 24-27 on motherboard

ioapic2 irqs 28-31 on motherboard

acpi0: on motherboard

acpi0: Power Button (fixed)

acpi0: Sleep Button (fixed)

unknown: I/O range not supported

unknown: I/O range not supported

Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000

acpi_timer0: 24-bit timer at 3.579545MHz> port 0x8008-0x800b on acpi0

cpu0: on acpi0

cpu1: on acpi0

acpi_button0: on acpi0

pcib0: port 0x8080-0x80ff,0x8000-0x807f,0xcf8-0xcff iomem 0xd8000-0xdbfff on acpi0

pci0: on pcib0

pcib1: at device 6.0 on pci0

pci1: on pcib1

ohci0: mem 0xfd120000-0xfd120fff irq 19 at device 0.0 on pci1

usb0: OHCI version 1.0, legacy support

usb0: SMM does not respond, resetting

usb0: on ohci0

usb0: USB revision 1.0

uhub0: AMD OHCI root hub, class 9/0, rev 1.00/1.00, addr 1

uhub0: 3 ports with 3 removable, self powered

ohci1: mem 0xfd121000-0xfd121fff irq 19 at device 0.1 on pci1

usb1: OHCI version 1.0, legacy support

usb1: SMM does not respond, resetting

usb1: on ohci1

usb1: USB revision 1.0

uhub1: AMD OHCI root hub, class 9/0, rev 1.00/1.00, addr 1

uhub1: 3 ports with 3 removable, self powered

pci1: at device 5.0 (no driver attached)

isab0: at device 7.0 on pci0

isa0: on isab0

atapci0: port 0x1000-0x100f,0x376,0x170-0x177,0x3f6,0x1f0-0x1f7 at device 7.1 on pci0

ata0: channel #0 on atapci0

ata1: channel #1 on atapci0

pci0: at device 7.3 (no driver attached)

pcib2: at device 10.0 on pci0

pci2: on pcib2

bge0: mem 0xfe800000-0xfe80ffff irq 25 at device 2.0 on pci2

miibus0: on bge0

brgphy0: on miibus0

brgphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseTX, 1000baseTX-FDX, auto

bge0: Ethernet address: 00:09:3d:10:a6:18

bge1: mem 0xfe810000-0xfe81ffff irq 26 at device 3.0 on pci2

miibus1: on bge1

brgphy1: on miibus1

brgphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseTX, 1000baseTX-FDX, auto

bge1: Ethernet address: 00:09:3d:10:a6:19

mpt0: port 0x2000-0x20ff mem 0xfe820000-0xfe82ffff,0xfe830000-0xfe83ffff irq 27 at device 4.0 on pci2

pci0: at device 10.1 (no driver attached)

pcib3: at device 11.0 on pci0

pci3: on pcib3

pci0: at device 11.1 (no driver attached)

atkbdc0: port 0x64,0x60 irq 1 on acpi0

sio0: 16550A-compatible COM port> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0

sio0: type 16550A

fdc0: port 0x3f7,0x3f0-0x3f5 irq 6 drq 2 on acpi0

fd0: 1440-KB 3.5" drive> on fdc0 drive 0

orm0: at iomem 0xc8000-0xcbfff,0xc0000-0xc7fff on isa0

ppc0: cannot reserve I/O port range

sc0: at flags 0x100 on isa0

sc0: VGA 16 virtual consoles, flags=0x300>

sio1: configured irq 3 not in bitmap of probed irqs 0

sio1: port may not be enabled

vga0: at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0

Timecounters tick every 1.000 msec

acd0: CDROM at ata1-master UDMA33

Waiting 15 seconds for SCSI devices to settle

SMP: AP CPU #1 Launched!

da0 at mpt0 bus 0 target 0 lun 0

da0: Fixed Direct Access SCSI-3 device

da0: 320.000MB/s transfers (160.000MHz, offset 127, 16bit), Tagged Queueing Enabled

da0: 70149MB (143666192 512 byte sectors: 255H 63S/T 8942C)

da1 at mpt0 bus 0 target 1 lun 0

da1: Fixed Direct Access SCSI-3 device

da1: 320.000MB/s transfers (160.000MHz, offset 127, 16bit), Tagged Queueing Enabled

da1: 70103MB (143571316 512 byte sectors: 255H 63S/T 8936C)

Mounting root from ufs:/dev/da0s1a

Hozzászólások

Meg, bár kivenni a gépből nem tudok, de lekorlátoztam mesterségesen:

make buildworld a V20z-n, 2 GB memóriával:

1278.482u 326.383s 26:03.86 102.6% 4304+3195k 1678+3297io 337pf+0w

Közben látom, hogy az első "mérés" nem is volt jó valószínűleg, lásd utolsó, pf részt...

Nem tudtam single userben csinálni, igazából az lett volna jó...

Na jelentem teszteltem:

SCHED_ULE

---------

time make buildkernel KERNCONF=ANDREJ

3141.611u 334.618s 1:01:19.45 94.4% 3737+1826k 7213+31366io 170pf+0w

time make -j2 buildkernel KERNCONF=ANDREJ

3168.923u 406.583s 44:35.06 133.6% 3680+1803k 6836+61439io 261pf+0w

time make -j4 buildkernel KERNCONF=ANDREJ

3182.559u 412.997s 46:45.09 128.1% 3676+1799k 9626+61426io 318pf+0w

4BSD

----

time make buildkernel KERNCONF=ANDREJ

3134.466u 307.368s 1:01:36.18 93.1% 3766+1839k 6701+31365io 296pf+0w

time make -j2 buildkernel KERNCONF=ANDREJ

3176.312u 362.225s 1:03:38.83 92.6% 3722+1822k 519+61409io 9pf+0w

time make -j4 buildkernel KERNCONF=ANDREJ

3187.976u 357.022s 1:03:50.07 92.5% 3722+1823k 501+61412io 190pf+0w

Konfig: ASUS P2B-DS, 2xPII-400, 2940UW, Seagate Cheetah.6 10kRPM, 384MB ECC SDRAM@100MHz

FreeBSD 5.4PRE 2005-03-02-i cvsupbol.

A konkret kernelkonfig nagyjabol azokat tartalmazza amik a fenti konfighoz kellenek es mast nem.

Nem broken már. :) Tessék cvsupolni és kiprobalni ha olyan a gep. ~3 napja probalgatom es egeszen jo. Tegnap csinaltam make buildkernel probat az ULE-vel siman, -j2 es -j4-el es most hasonloak jonnek a 4BSD-vel. Azert "csak" buildkernel mert egy Dual PII-400 es ~4-6 ora egy buildworld, ugy hogy mar gyomlaltam is belole a make.conf-ban. Ha megvannak az eredmenyek majd postolom

> de egyébként szerintem igazad van, nem kellene, hogy pár másodpercnél nagyobb eltérés legyen...

Ettol fuggetlenul ha korrekt tesztet akarsz, akkor torekedni kell szerintem arra, hogy a leheto legjobban hasonlitsanak a parameterek.

Elso esetben:

2x3,6 GHz CPU

2 GB memória

U320 HDD

2x2,4 GHz CPU

4 GB memória

U320 HDD

Itt egy dolog egyezik, az U320 HDD.

Masik eset:

2x3,6 GHz CPU

2 GB memória

U320 HDD

2x2,4 GHz CPU

2 GB memória

U320 HDD

Itt viszont mar ketto dolog egyezik, es csak a processzor az ami nem. Szerintem - fuggetlenul attol, hogy szamit-e valamit a RAM kulonbseg ebben az esetben - igy korrektebb.

(A SCHED_ULE az most nem broken épp bizonyos stabilitási problémák miatt?)

Az ULE -ra a HyperThreading -el kapcsolatos állítólagos előnyei miatt vagy kíváncsi, hátha úgy más lesz a különbség a HT-s xeon és az Opteron között? Mert ha csak simán a két scheduler viszonya érdekel, ahhoz nem kell Bra és a két gépe, hogy kipróbáld :) (feltéve, hogy az ULE már nem broken)

No és melik ütemezővel készült a teszt? :) A standard 4BSD-vel vagy az uj ULE-vel? Jolenne tesztelni az ujat is szvsz.

Megismételte, de ahogy te is láthatod, az eredeti sima make buildworld jelentősen eltér a többitől, így az sem volt jó.

Most csinálok egy új make buildworldöt 4 GB-tal és kijavítom a cikket...

A 2 GB-os értéket a hozzászólások között megtalálod, de egyébként szerintem igazad van, nem kellene, hogy pár másodpercnél nagyobb eltérés legyen...

Aki latott mar make worldot, az tudja, hogy a 2 gb vs 4 gb memoria kevesse szamit, ugyanis nem igenyel sok memoriat a muvelet. Esetleg file cachingnel nyer vele az ember egy keveset, de nem lepodnek meg, ha nem mutatkozna semmi kulonbseg, ha Bra megismetelne a tesztet 2 gb -ra korlatozva. (Vegul is azon se, ha igen.)

Persze azt is jó lett volna odairni, hogy egy perdites idotartama nem csak a CPU tol fugg.... Persze itt merem azt feltetelezni, hogy mind2 gepen kulon clean src tree volt es kulon clean objdir nem pedig NFS mountokon keresztul dolgozott?

24003+3276io 1336pf+0w

Vajon miert ut el ez a ket ertek annyira a tobbitol?

thuglife wrote:
> egyertelmu. de az ilyen tesztek semmit nem bizonyitanak legalabbis
> szamomra, ugyanis nemtom hogy a freebsd make szalazasa hogy all de ugy
> emlekszem voltak vele problemak. persze ezt azota biztos kijavitottak csak
> nem emlekszem mikor is volt ez.
Nálam azért van ez a gép, hogy megnézzem, egy adott feladatra jobb-e,
mint a DL380-as.

Nekem az adott alkalmazás fog számítani, neked más. Nem lehet mindenre
kiterjedő benchmarkot csinálni.

thuglife wrote:
> es ugyanaz a hdd ;)
Persze mi értelme van ugyanazt a diszket betenni, ha nem ugyanolyan
kontrolleren lóg. De ha ugyanolyan kontrolleren is van, semmi értelme
nincs, ha más a buszsebesség.
De mit sem számít a buszsebesség, ha egyszer millió más van még azon a
buszon.
És persze az sem mindegy, hogy a busz valójában hogy is kapcsolódik a
processzorhoz.

Kihagytam valamit? A korrekt összehasonlítás az lenne, ha beletenném a
két opteront a DL380-ba. Nyilván látod, hogy erre lehetőség nincs,
úgyhogy marad ez a felállás.

Gondolom azt elismered, hogy akármilyen diszket tehetnék a DL380-asba, a
V20z akkor is megverné. És ebbe szerintem nyugodtan értsd bele a
ramdiszket is :)

Azert az a 2 GB RAM vs. 4 GB RAM valahol nem fair imho. Meg lehetne ismetleni ugy, hogy mindegyikben ugyanannyi RAM van?

thuglife wrote:
> Persze azt is jó lett volna odairni, hogy egy perdites idotartama nem csak
> a CPU tol fugg.... Persze itt merem azt feltetelezni, hogy mind2 gepen
> kulon clean src tree volt es kulon clean objdir nem pedig NFS mountokon
> keresztul dolgozott?
Lokális diszk, a törlést pedig megcsinálja a buildworld (amely az előző
buildworld eredményét takarítja, amely mindkét gépnél ott volt, tehát az
első make buildworld legalább a második, de inkább a harmadik).

Egy eredmény nem eredmény, úgyhogy némelyik buildworld-öt lefuttattam
kétszer is, 2-3 másodperces eltérést mutattak az értékek az előző
futáshoz képest.

A fordítás időtartama valóban nem csak a processzortól függ, de hidd el,
jelen esetben a teszteredmények nem különböztek volna nagy arányban, ha
kicserélem a diszkeket a két gép között...