Miért quickbench? Azért, mert nyomatékosítani szeretném, hogy ezeknek a teszteknek semmi közük a valósághoz, csupán gyors (szintetikus) benchmarkok, mindenféle előzetes tuningolás, és az eredmények részletes értékelése, azok tesztekbe való visszacsatolása nélkül.
Na de nézzük, mink is van: a nálunk járt Sun T2000-es 8 GB memóriát, két 72 GB-os 2,5"-es SAS diszket és egy darab 8 magos, 1 GHz-es UltraSPARC T1-es processzort tartalmazott.
Ez processzor a Sun új csúcsfegyvere, amely egy tokban nyolc CPU-t tartalmaz, amelyek összesen 32 thread futására tudnak hardverből "odafigyelni". A cég szerint az egyes magok órajelét nyugodtan felszorozhatjuk azok darabszámával, így szerintük ez a gép egy 8 GHz-esnek felel meg.
Aki mindezen felbuzdulva bevásárol ebből a gépből, jó ha tudja, hogy a fenti állítás nem igaz. Vagy legalábbis nem úgy. A lényeg, hogy a gép ereje a felépítésénél fogva csak azoknál az alkalmazásoknál jön elő, amelyek több szálon képesek futni és ezeknek a szálaknak (és így processzormagoknak) munkát is tudnak adni.
Sajnos rengeteg olyan alkalmazás van, amely erre képtelen, így senki ne csodálkozzon, mikor a csillogó, 9,6 GHz-es (esetünkben 8) gép elé leülve úgy érzi magát, mint a jó öreg PIII 450-esen.
Nézzük a szoftverkörnyezetet: a gépen mérkőző operációs rendszerek közül az egyik a világ legfejlettebb Unixa, a Solaris 10-es. Sajnos a Nevadát (leendő 11-es) nem volt időm kipróbálni, pedig rengeteg teljesítményjavító intézkedés történt benne.
A másik operációs rendszer a mostanában SPARC-on némileg hanyagolt bugware, név szerint a Linux.
Ez utóbbi csak nemrég képes futni ezen a platformon, de szerencsére az ubuntus csapat és Dave Miller kemény munkájának köszönhetően a Dapper Drake már hiba nélkül telepíthető és használható rajta. Köszönet nekik (és a Sunnak) ezért.
Az Ubuntu alapból egy erősen patchelt 2.6.15-ös kernellel érkezik, amelyből a stock verzió még futásképtelen a gépen. A leendő 2.6.17-es viszont már a kernel.org-os verzióban is használható.
Egy érdekesség adódott a Linuxszal, mégpedig az, hogy a 32 (virtuális) processzor helyett csak 24-et "látott". Tekintettel arra, hogy csak egy délutánom volt a tesztre, efölött erősen elítélhető módon elsiklottam.
A gépen ki szerettem volna próbálni a FreeBSD-t is, amely szintén gőzerővel készül erre a multicore-os szörnyetegre, de sajnos a fejlesztő szerint még alapvető problémák vannak a használhatósággal (nem lehet 16 MB-nál több memóriát igénylő programokat futtatni), így azt legnagyobb bánatomra mellőznöm kellett.
Csapjunk bele a lecsóba.
Az első teszt a sysbench nevű mindentudó benchmark program memóriatesztje volt. Ebben a tesztben eltérő blokkméretekkel végeztem tesztet.
Az első mérés a gyári 2.6.15-ös Linux kernellel történt:
Látható, hogy annak ellenére, hogy csak 24 processzort látott a kernel, a memóriasávszélesség 32 threadig nőtt, elérve a maximumot.
A következő teszt a 2.6.17-es (kernel.org-os) kernellel készült:
Nagy különbség nem látszik. Ezt követően megnéztem, hogy mit tud a gép Solarisszal:
Látható, hogy itt az 1kB-os blokkméretnél elfogyott valahol a szufla, így a két operációs rendszer összehasonlításához a 2k-s blokkméretet vettem alapul, mivel az a Linuxnál és a Solarisnál is párhuzamos a többivel és jobban szemügyre vehető a görbe eleje:
A görbe több szempontból is érdekes. Egyrészt az látszik, hogy a 2.6.17-es kernel néhol elég jelentősen eltér a 2.6.15-östől. Nem véletlen tehát, hogy többen is sportot űznek abból, hogy az egyes kernelverziók közötti sebességkülönbségeket figyeljék.
Másrészt elég egyértelműen látható, hogy aki sysbench-csel méri az e-pénisze méretét, az jobban jár, ha Solarison futtatja. A görbe csúcspontján, 32 szálnál kétszeres különbség jelentkezik, ami jelenthetné azt is, hogy a Solarist már rendesen optimalizálták erre a platformra, a Linuxot pedig még nem, azonban ugyanez az eltérés fennáll az operációs rendszer x86-os változatánál is. Aki kíváncsi a részletes magyarázatra, olvassa el a forráskódot.
A következő teszt ugyancsak a sysbench igénybevételével a MySQL adatbázisszerverrel történt. Elkerülendő, hogy a sysbench teljesítményét mérjem a MySQL-é helyett, ebben az esetben egy második gépet is igénybe vettem, amely egy közvetlen gigabites kanóccal volt a T2000-es fenekébe dugva. A tesztek így hálózaton keresztül történtek, a sysbenchet futtató gép minden esetben egy 32 bites Linux (Ubuntu) volt. A kliens gép két darab 2,6 GHz-es Opteronnal rendelkező szerver volt, amely így nem okozott szűk keresztmetszetet a sysbenchnél.
Első tesztünk azt hivatott eldönteni, hogy a MySQL 4.1-es verziója 32, vagy 64 bitesen gyorsabb-e Solaris 10-esen:
Azt hiszem a kérdés eldőlt. Sajnos az idő rövidsége és az Ubuntu kreténsége (vagy inkább az én hülyeségem) miatt Linuxon nem volt módom kipróbálni ugyanezt, így ott minden esetben 32 bites módban futott a MySQL.
Következő tesztünk kicsit összetettebb, SELECT teljesítményt mér egy 1 milliós HEAP táblán, azaz a tesztben nem szerepel semmiféle diszk IO.
Íme az ábra:
A teszt több kérdésre is megpróbál választ adni. Egyrészt szerepel benne Linux esetén egy MySQL 4.1 és 5.0 összehasonlítás, Solarisnál pedig ez kiegészül a beta verziós 5.1-gyel. Ezenfelül kíváncsi voltam a két kernel teljesítményére is.
A konfiguráció mindkét esetben megegyezett.
A görbéken túl sok mindent nem kell magyarázni. A Solaris vitte a pálmát ebben a tesztben a Linuxszal szemben, amely talán nem is olyan meglepő, figyelembe véve, hogy a Linux valószínűleg még kevésbé optimalizált a T1-esen, mint a Solaris. Utóbbi 512 kliens threadnél kb. négyszeresen rávert a Linuxra a MySQL 4.1-et futtatva.
Érdekes még megfigyelni, hogy a 4.1-5.0-5.1 vonalon a MySQL milyen szépen lassul, amely különösen feltűnő akkor, mikor sok kliens kérdez a szervertől.
Konklúzió: a Sun T1-es processzora haldoklik (szakáll kinő, haj kihull), mikor nem megfelelően párhuzamosítható munkát adunk neki és szárnyal, mikor legalább 32 szálon használjuk. A Sun a processzort elsődlegesen olyan helyekre ajánlja, ahol ez a párhuzamosság előállítható (webszerverek, adatbázisszerverek), amely ajánlást valóban érdemes megfogadni.
Hátránya az architektúrának (sok, lassú core), hogy az ellenfelekkel szemben (pld. két magos Opteron és Xeon) itt nem tudunk nagy teljesítményt kivenni a gépből, ha csak kevés szálon terheljük. Egy két magos Opteronnál néha már akár két, vagy négy szálon (de 8-nál már nagy biztonsággal) elérhető a maximális teljesítmény és a legrövidebb válaszidő, azonban ugyanehhez a T1-nél 32 aktív szál szükséges, amely nem biztos, hogy mindenhol megfelelő. Egy gyengén, vagy közepesen terhelt szervernél hiába fut 4-8 szálon a kiszolgálás, a gép csak a teljesítménye felét képes leadni, a válaszidők ezáltal lassabbak lesznek mint egy ennek megfelelő teljesítményű Opteron, vagy Xeon processzoron.
Példaként említhetném a HUP adatbázisát, ahol nagyon ritka, hogy kettőnél több query fusson egy időben. Ahhoz tehát, hogy ez a gép jó befektetés legyen, ennél jóval nagyobb terhelést kell neki biztosítani.
- A hozzászóláshoz be kell jelentkezni
- 4810 megtekintés
Hozzászólások
"A Solaris vitte a pálmát ebben a tesztben a Linuxszal szemben, amely talán nem is olyan meglepő, figyelembe véve, hogy a Linux valószínűleg még kevésbé optimalizált a T1-esen, mint a Solaris."
Valószínűleg, mivel szerintem onnantól kezdve, hogy szilíciumba öntötték a T1-et, a Solaris-t reszelték hozzá. Miller meg jó esetben 2 hónapja reszeli a Linuxot hozzá :-)
--
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
Ja, ennek ellenére annyira nem rossz. :)
- A hozzászóláshoz be kell jelentkezni
FreeBSD tuti verte volna mindkettőt! ;P
- A hozzászóláshoz be kell jelentkezni
Széjjelgyalázta volna mindet. Még úgy is, hogy a MySQL csak 32MB RAM-ot ehet.
Poénból meg akartam nézni, de elcsúsztam az idővel.
- A hozzászóláshoz be kell jelentkezni
Melyik verzióra gondolsz? :)
(pár hónapja volt lehetőségem egy FreeBSD-6 vs Linux 2.6.13(?) tesztre,
Pound proxy futott mindkettőn. Háááát, a FreeBSD majdnem sírva
fakadt...:))
- A hozzászóláshoz be kell jelentkezni
Biztosan rosszul csináltad, mint ahogy Robert a poundot. :)
Elég sokat elmond, hogy sokaknak van/volt vele teljesítményproblémájuk, szóval nem az az ügető versenyló az a progi, annak ellenére, hogy egyszerű, mint a bot.
- A hozzászóláshoz be kell jelentkezni
Biztosan rosszul csináltad, mint ahogy Robert a poundot. :)
lehet, megjegyzem ott is default volt minden, ami lehetett.
(FreeBSD-nél kellett új kernel, de az SMP-s HINT-el forgattam,
(tudom, h nem ez a neve, de így mindenki érti), illetve
az OpenSSL-t kellett thread-del forgatni. Linuxon minden
Debian volt, még az SMP-s kernel is).
Elég sokat elmond, hogy sokaknak van/volt vele teljesítményproblémájuk
De nekem akkor épp ez kellett :)
a.
- A hozzászóláshoz be kell jelentkezni
Engem leginkább a mysql teljesítmény lassulása döbbentett meg a 4.1-5.0-5.1 vonalon :o
- A hozzászóláshoz be kell jelentkezni
Hát, pedig várható volt. Több funkcionalitás->alacsonyabb tempó.
- A hozzászóláshoz be kell jelentkezni
thx bra
- A hozzászóláshoz be kell jelentkezni
kitettem a linket a digg-re.
digg-eljetek;)
http://digg.com/linux_unix/digg
Anr - http://andrej.initon.hu
- A hozzászóláshoz be kell jelentkezni
Kiváncsi vagyok hány olvasást ér el a cikk.
- A hozzászóláshoz be kell jelentkezni
Javítsatok ki légyszi ha rosszul értelmeztem valamit de: ez egy olyan gép, amelyik kb. 3 millkába kerül (lehet persze adni kétszer ennyit is az 1.2 -ért) és ha nem húzzák ki csontra, akkor nem hogy csak felesleges pénzkidobás volt, de sokkal szarabbul is teljesít mint egy másmilyen vas? Ez számomra egy kicsit furcsa (és még nagyon finoman fogalmaztam).
Marketingnek persze jo, de egyebkent...
Másrészt ki a fene akarna egy ilyenre Linuxot feltenni - hacsak nem perverzióból - ha egyszer megvette Solaris 10-zel? Ez kb. olyan mint a szintetikus benchmark, elméletben lehet róla beszélni, de hogy van-e valami valós értelme az kérdéses...
- A hozzászóláshoz be kell jelentkezni
A Sun egy másik megközelítést választott a T1-gyel, mint a többiek. Ebből következik, hogy a T1 valóban elég gyengén teljesít, ha nem tudsz megfelelő párhuzamosítást elérni.
Egy kollegám Oracle tesztet csinált a gépen és először nem is értette, hogy miért mászik befelé olyan lassan az adat (ami egy modern Opteronon 30 perc, itt több, mint három óráig futott).
Érdemes ezt is megnézni a témában:
http://people.fsn.hu/~bra/papers/Sun/architecture/finance_2006_03.pdf
Szóval ésszel kell vásárolni, aki ilyet vesz, ne a Sun marketingeseire, hanem a hozzáértőkre támaszkodjon, nézze meg, hogy nála kihasználható-e a gép, van-e értelme megvenni.
- A hozzászóláshoz be kell jelentkezni
Igen, microbenchmark helyett sokkal célszerűbb lenne mondjuk egy Java appserverben futó webes alkalmazás kiszolgálási sebességét kimérni, azt hiszem ez az egyik célja a procinak...
- A hozzászóláshoz be kell jelentkezni
OLTP-re is reklámozzák, az IWIW is ilyenen ment. Mondjuk ők ki is hajtották, azzal nem volt gond. :)
Szerepelt a tervek között egy ilyen teszt is, de sajnos mással is kellett foglalkozni, így nem maradt rá idő. :(
- A hozzászóláshoz be kell jelentkezni
A T1000 ára 2995$ nál kezdődik. (sun.com megtalálod az árát) Az kb 600 000 Ft....
- A hozzászóláshoz be kell jelentkezni
Arról a T1000-es szerverről beszélünk, amelyben összesen egy darab - ismétlem 1 darab - 80 GB-os SATA merevlemez van, és nem is tehető bele több? :-DDDD
Jó kis biznisz. A HP DL 380/385-be 6 darab merevlemez és 2 processzor tehető ennyiért (na jó egy egész picivel többért, diszkek nélkül, 1 CPU-val).
Bocs, de ez egy elég elfuserált valami. Ha az 1 unit szerverek témában maradunk... a HP DL145-be (Opterongy processzor) is két diszk tehető minimum... A HUP jelenlegi 100 éves 1 unit magas szerverébe 3 darab...
Egyszerűen nem tudom, hogy mire tudnám használni egy lemezzel.
--
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
A T2000-be pedig 4 darab 73 GB-s SAS diszk, és az sem sokkal drágább.
Egyébként web és alkalmazás szervernek van kiajánlva, annak meg még ez a hely is sok. Adatbázist pakold máshova, ha teljesítmény kell akkor valami SAN-os dobozba. :)
Egyébként azzal nem akarok, és nem is tudok vitatkozni, hogy drága. A Sun szerverek általában drágábbak, mint a hasonló teljesítményű társai a piacon.
- A hozzászóláshoz be kell jelentkezni
Hat jah, egy max. load balancer mögé tudnám elképzelni webszervernek, úgy h csak a webszerver fut rajta. Minimum 2-t (vagy többet), mert ha az egyik megdöglik, addig a másik (vagy a többi) át tudja venni a feladatot, és addig a rosszban lehet diszket cserélni, telepíteni. Erre viszont véleményem szerint drága, és ahogy a benchmark is mutatja, nem biztos, hogy a legjobb választás.
--
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
A teszt T2000-ről szól, és az már normális kiszerelés.
Amiről most beszélgetünk, a T1000 az inkább egy elfuserált játékszer....
- A hozzászóláshoz be kell jelentkezni
De azt olvastam benne, ha nem tudod kihajtani a T1 processzort sok thread-del (a T1000-ben is ilyen processzor van 6 vagy 8 core-ral, 1 GHz -es órajelen, nem?), akkor lehet, hogy egy Opterongy / Xeon szerver jobb választás. Apache-csal kéne mérni a T1 vs. többit.
--
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
Pontosan így van.
Viszont léteznek olyan szolgáltatók, akiknél több száz ügyfél lóg online, a webszerveren, vagy appszerveren, és jelenleg több tucat load balance clusterbe kötött gép szolgálja ki őket.
Itt esetleg érdekes alternatíva lehet, mert pl. 16 load balanceolt Opteron/Xeon helyett elég lenne 5-6 T2000.
Nyilván a HUP-os MySQL szervert nem fogod egy IBM P590-esre rakni, de azért van olyan cég, ahol két ilyen is ketyeg clusterbe kötve....
- A hozzászóláshoz be kell jelentkezni
Az összehasonlító teszt az Opteron/Xeonnal később jön, de annyit már most elárulhatok, hogy a 16 Opteron helyett nem lenne elég az 5-6 T2000...
- A hozzászóláshoz be kell jelentkezni
>Egyszerűen nem tudom, hogy mire tudnám használni egy lemezzel.
Nos, igen. Ez tényleg F.szság volt a Sun részéről...
- A hozzászóláshoz be kell jelentkezni
Errol a T2000-rol volt szo:
catalog.sun.com
Pontosabban arrol, amelyik 3,4 millaba kerul.
- A hozzászóláshoz be kell jelentkezni
Köszi bra!
Nem akarja vki /.-ra kitenni? Had dolgozzon meg utolsó napjain a hup vas. :-D
- A hozzászóláshoz be kell jelentkezni
OSNews-ra már beküldtem. Talán kiteszik.
--
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
Az OSNews -on említik is... :)
--- GTK programozás C nyelven ---
http://hu.wikibooks.org/wiki/GTK%2B_programoz%C3%A1s_C_nyelven
- A hozzászóláshoz be kell jelentkezni
mar bekuldtem a digg-el azonos idoben, pending allapotban leledzik azota is;)
Anr - http://andrej.initon.hu
- A hozzászóláshoz be kell jelentkezni
Ez igen jó kis teszt, köszi érte...
Egy kis komment:
"Első tesztünk azt hivatott eldönteni, hogy a MySQL 4.1-es verziója 32, vagy 64 bitesen gyorsabb-e "
Azt hiszem az hogy 64, vagy 32bit, nem igazán játszik sebesség tekintetében.... Szimplán csak nagyobb memóriát képes címezni a 64 bites oprendszer.... vagy én vagyok aki téved?
- A hozzászóláshoz be kell jelentkezni
"Compared to 32-bit MySQL, 64-bit MySQL can address more memory for the data cache, code cache, and metadata caches inside MySQL to reduce disk I/O."
Azaz, pont úgy gyorsít, hogy több memóriát képes használni.
Szóval 4Gb ram alatt tökmindegy, hogy 64, vagy 32 bites a cucc.
- A hozzászóláshoz be kell jelentkezni
Nem éppen ezt mondja, olvasd el a teljes bekezdést.
A teszt is azt állítja, hogy a tábla cache-ben volt, tehát a memória mérete nem volt korlátozó tényező.
- A hozzászóláshoz be kell jelentkezni
Egyébként ami még ennek a processzornak az előnye, az a baromi alacsony fogyasztás. Ezt a tényt sokan hajlandóak egy vállrándítással elintézni, viszont rengeteget számít.
- A hozzászóláshoz be kell jelentkezni
Ismét csak a nemsokára következő Opteron/Xeon összehasonlításra tudok utalni. És a válaszom itt is: nem nyert.
A T2000 nem gyorsabb és nem fogyaszt kevesebbet egy azonos kategóriájú Opteronnál/Xeonnál (LV), cserébe nehezebben tudod kihasználni, mivel kevés szálon lassú. Legalábbis ezt tudom mondani a MySQL tesztek alapján.
- A hozzászóláshoz be kell jelentkezni
Mostmár tényleg epedve várom ezt az Opteron/Xeon összehasonlítást. :)
- A hozzászóláshoz be kell jelentkezni
Egyelőre csak egy ultra low end 2 GHz-es Xeon LV lesz, de ez a cucc annyit tud, mint a T2000-es.
- A hozzászóláshoz be kell jelentkezni
Mindezek után még mindig az a véleményem, hogy ennek a gépnek (procinak, gépcsaládnak) nem sok (majdnem semmi) értelme. A SUN még vergődik egy darabig a szaraival, de lehet, hogy előbb-utóbb kénytelenek lesznek átállni teljesen x86 (vagy minek nevezzem) architektúrára :)
- A hozzászóláshoz be kell jelentkezni
Mielőtt bölcs szakértő módjára leírnánk ezt a vasat, azért érdemes 1-2 dolgot szem előtt tartani.
1. Ez a teszt csak egy alkalmazást (MySql) vizsgált.
2. Alap install volt, semmi tuning sehol. Ez azért normál üzemben nem így van.
Érdemes néhány más tesztet is megnézni. Nem olyanokat amiket a Sun csinált, hanem amiket b(r)arátunkhoz hasonló emberkék.
pl.:
http://www.stdlib.net/~colmmacc/2006/03/23/niagara-vs-ftpheanetie-showd…
- A hozzászóláshoz be kell jelentkezni
Így van. Illetve annyira mégsem, mert a Sun által ajánlott (fenti linken) dolgokat elolvastam és felhasználtam, tehát valami minimális tuning volt benne.
Én egy következtetést vontam le, ami már azelőtt is nyilvánvaló volt: dolgoztatni kell a gépet, hogy teljesíteni tudjon. És ez nem mindenhol egyszerű és van ahol lehetetlen.
- A hozzászóláshoz be kell jelentkezni
Nem is veled vitatkozom, csak azokkal a dilettánsokkal, akiknek egy darab, minimális teszt (nem a munkádat akarom leszólni, számomra igen tanulságos volt így is, köszi érte) hatására az a véleménye "hogy ennek a gépnek (procinak, gépcsaládnak) nem sok (majdnem semmi) értelme".
Az az alap, hogy egy gépet jól meg kell dolgoztatni.
Mi a fenének venne valaki olyan vasat, amit max 40%-ra terhel ki? Akkor vegyen egy fele akkorát, jóval olcsóbban.
Azzal a legtöbb független tesztelő egyetért, hogy a T2000-et web és alkalmazás szerverként érdemes használni, és akkor is, ha rendesen ki tudod terhelni. Még ilyen esetben is az a szitu, hogy egy kapcsolatnak viszonylag nagy a látenciája (vagyis tovább tart), viszont jóval több párhuzamos kérést tud kiszolgálni, mint bármi más ebben a kategóriában.
De mint Te is írtad, ezek teljesen nyilvánvaló dolgok.
- A hozzászóláshoz be kell jelentkezni
Szerintem aki csak PC alapú szerverben gondolkodik, az jogosan kritizálja. Szerencsére vannak más kategóriák, amelyek más igényeknek felelnek meg.
- A hozzászóláshoz be kell jelentkezni
Azok a dilettansok en vagyok :) Az igaz, hogy egyetlen teszt alapjan nem szabad messzemeno kovetkezteteseket levonni, en pedig beleestem ebbe a hibaba. Akkor inkabb ugy fogalmaznek, hogy egy ilyen viselkedes eseten szvsz eleg nehez "beloni", hogy a kiszolgalo mindig a megfelelo terheles alatt legyen.
Az x86 vicc volt es nem kivanom, hogy igaz legyen. Igy is kezd kisse egyoldaluva valni a vilag.
- A hozzászóláshoz be kell jelentkezni
Ez esetben a korrektség úgy kívánja, hogy elnézést kérjek. Mert ugye egy hozzászólás alapján még nem kéne valakit ledilettánsozni.
No, ennyit a bájolgásról, jöhetnek megint a kemény szavak. :)
- A hozzászóláshoz be kell jelentkezni