64 vagy 128 szál

Fórumok

Sziasztok,

Kellene 64 vagy 128 szálas megoldás. AMD threadripper-ben gondolkodok első blikkre, ez 64 szál (32 core) és szálanként 1 G mem (össz 128G).

Vízhűtés is kellene szerintem. Van olyan alaplap amibe 2 ilyen procit bele lehet tenni?

Mennyivel jobb az ár / érték aránya (teljesítményben és strapabírásban) szemben egy i9-es erősebb szériával, ha leosztjuk az árát a szálak számával plusz szálankénti sebességgel?

Cél hogy fullra kihajtva minél tovább bírja 24/7-ben, és minél több szál legyen 1 OS-en belül. Van tapasztalatotok vele?

Köszi.

Hozzászólások

Az nem úgy működik, hogy tud skálázódni vagy nem tud skálázódni. Az a kérdés, hogy mennyire tud skálázódni, megéri-e a kétszer több szál, vagy inkább kevesebb, de erősebb szállal fog jobban futni. https://upload.wikimedia.org/wikipedia/commons/thumb/e/ea/AmdahlsLaw.sv…

Ez szerintem nem minden esetben van így.

Kieg.: nem pont az van hogy a tisztán számítási feladat befér a lapka cache-be és így több szálon létrejön párhuzamos feldolgozás, míg ha sok a memória feladat vagy egyéb I/O akkor az nem tud úgy párhuzamosodni szálak közt mint magok közt?

AMD Epyc lesz a baratod, abbol van dualsocket. A zen2 alapu epp a kuszobon, ha arra van ido erdemes megvarni. Supermicronak vannak komplett vasai, egeszen elfogadhato aron.

Arra keszulj, hogy a sok szal relativ kis orajel lesz es a kevesebb szaluak nagyobb orajelesek.

A hyper threading szeru mukodesebol (SMT) kifolyolag a pusztan szamolo feladatokat meg lassithatja is. Egy kikapcsolt HT-s tesztet mindenkepp meger a dolog.

Ha jól értem amire gondolsz, akkor pont fordítva van.
A hyper threading nem duplázza meg a cpu teljesítményét, hanem amíg az egyik thread memóriával vagy I/O wait-al van elfoglalva, addig a másik szál tud feldolgozással foglalkozni.

Triviális példa: egy szálon futtatsz gzip-et, kikapcsolt hyper threadinggel. Ez kb. ugyanazt a tömörítési sebességet produkálja mint bekapcsolt hyper threading esetén párhuzamosan indított két gzip együtt.

A POWER4 egy szuperskalár mikroarchitektúrát valósít meg, amelyet magas frekvenciájú spekulatív sorrenden kívüli végrehajtás jellemez, nyolc független végrehajtó/műveleti egység használatával. Az egységek a következők: két lebegőpontos egység (FP1-2), két betöltő-tároló egység (LD1-2), két fixpontos egység (FX1-2), egy elágazáskezelő egység (BR) és egy feltételregiszter egység (CR). Ezek a végrehajtóegységek legfeljebb nyolc műveletet képesek befejezni órajelciklusonként (a BR és CR egységeket kivéve):
- minden lebegőpontos egység egy összevont szorzás-összeadás utasítást képes befejezni órajelciklusonként (két művelet),
- minden betöltő-tároló egység egy utasítást képes befejezni órajelciklusonként,
- minden fixpontos egység egy utasítást képes befejezni órajelciklusonként.

No, ez a 2001-es technológia egy magra. ;)

A POWER6 ... Mindegyik mag két fixpontos egységgel, két bináris lebegőpontos egységgel, egy AltiVec egységgel és egy újszerű decimális lebegőpontos egységgel rendelkezik.

Ez meg már a 2007-es. Itt az AltiVec közvetlenül a cache-re kapcsolódik, amely a későbbi típusoknál már 2db fp64 adatot is tud kezelni órajelenként.

A thread váltásnál újra kell tölteni a regisztereket. A korai cpuk ilyenkor "megálltak és szünetet tartottak". A POWER5-töl ez megszűnt, a későbbi processzorok már "mixed módban" váltottak. Ez azt jelenti, hogy a regiszterek és a műveleti egységek időben átlapoltan két vagy több thread adataival dolgoznak.

Manapság (is) a POWER 2x vagy 4x annyi thread futtatására képes magonként, mint az "egyéb" cpuk.

Azt se felejtsük el, hogy már a régi időkben is az IBM-SUN "adatbázisversenyt" rendre az IBM nyerte, de feleannyi core alkalmazásával. Szóval a fenti puszta számoknak látszik némi haszna a gyakorlatban is. Ezt akkoriban az Oracle a dupla licencdíj/core megoldással honorálta az IBM felé. :-D

Igen, pontosan erre írtuk többen, hogy a HT működéséből adódóan inkább a bármilyen IO-ra váró párhuzamos feldolgozást tudja megdobni. Esetedben a konkrét "számológépes" felhasználással kell tesztelned, hogy HT off és HT on mit javít vagy ront. (Mármint BIOS-ban fullosan kikapcsolni a HT-t, nemcsak egy meg sokszálon tesztelni).

Mit jelent, hogy "fullra kihajtva"? Mire fogod használni?

Vízhűtés is kellene szerintem.

Ez nem a lego szint, vegyél egy szervert/workstationt aztán had szóljon.

nem lehet hogy nem éri meg a dedikált szerver az ár / érték arányban? csak kérdezem

ha ez sokáig megy, akkor megy amíg megy aztán kuka - egyszer olvastam hogy google is inkább kommerszebb hardvert használ mert inkább kuka mert így is jobban megéri - másképpen fogalmazva, a többlet tudása a dedikált hardvernek megéri-e ha vissza osztjuk az élettartamát az árával? erről nincs információm, ezért kérdezem

btw nem disk sem lesz a gépben, így tényleg csak az alaplapról, hűtéséről meg a tápról beszélünk, tehát nem kell disk redundancia meg hw raid illetve extra bios - ami kell az CPU és memória ennyi

tehát deidkált szerverben 128 szál + 128G memória mennyibe kerül a fenti ellenében és megéri-e?

köszi

Ha valami hobbi projekt akkor szerintem használt vasban gondolkozz, jóval olcsóbb. Ha munka akkor meg vegyél valami rendeset, egy konzumer akármi nem arra van kitalálva, hogy 7/24-ben hajtsd.

A google esetén elég más a helyzet, nekik az, hogy egy kiesek a sok ezer gépből nem gond.

En lattam kifuseralt google "junka" gepet. Az nem ugy volt kommersz, ahogy legtobben gondoljak. A versenytarsak enterprise/mainframe megoldasaihoz kepest konzumer volt, de azert egy izmos 7/24-re tervezett szerver gepet lattam. Igaz megfosztva minden sallangtol, es a google sajat tervezesu szekrenyebe csavarozva. Szoval nem egy no-name utan-gyartott kinai csodat kell elkepzelni (sajna a pontos reszletekre nem emlekszem).

-
First impressions of the new Cloud Native programming language Ballerina

Ha visszaosztom az élettartamát az árával és így hasonlítok, akkor nem érdekel ha csak pár évet megy de annyival olcsóbb hogy megéri sűrűbben cserélni mint a dedikáltat. Tehát pont hogy anyagi szempontból nézem. Lehet hogy az egyik vagy a másik éri meg jobban. Pont ezt az arányt szeretném látni. Éles felhasználás folyik, ezt megtámogatandó erőforrás növeléshez lesz.

Kb-re tudnátok mondani milyen árszinten vesztegetnek 32 mag 64 szál 64G RAM szerver vasakat újan? Tól-ig nagyságrendileg már segítene látni nagyjából szerintem. Persze olyan érdekel kizárólag, amivel direkt nem csinál a gyártó vendor-lockin-t sajátos firmware-ekkel amelyek fehér listákat tartalmaznak hogy milyen cuccal működnek, vagy szinte semmi driver nincs a NIC-hez, meg egyéb szivatások nélküli érdekel. (Ami van kevés tapasztalatom dedikált szerverrel, az nem igen jó, sok időt és pénzt nyelt ha valami gond volt, végül mindig egyszerűbb és stabilabb volt a negyed annyiba kerülő cuccokat használni villámgyors helyettesítéssel - nyilván ez nem mérvadó és biztos vannak jó cuccok, de a vendor-lockin nagy negatív, illetve az ár szintén erős tényező nem csak az olcsóság miatt, hanem függetlenség és nem kevés idő spórolás).

En ilyet nem tudok. Viszont a szemelyes tapasztalatom szerint a junka PC lekorozi arban az brand szervereket (pl. mert a brand gepekbe beraknak egy rakas, az atlag user szamara felesleges dolgot is), kiveve ha (a teljesseg igenye nelkul):

- nem ECC-s a junkadban a RAM es kapsz memoriahibat (aminek szinten a szubjektiv tapasztalatom szerint manapsag egyre kisebb az eselye)
- junkasagbol adodo koltsegek felulmuljak a HW-k koltsege kozotti kulonbseget, pl. nincs remote konzol, nincs dupla tap, nincs mgmt dashboard, kicsit nagyobb az eselye a meghibasodasnak, nem hotswap, elbol elutasitja a kollega/sysadmin/jozsi bacsi, nagyobb helyet foglal, a hibakeresessel tobb idod megy el, mint egyebkent stb.
- a junka PC-d valojaban egy igenyesen osszeszerelt gep, akkor nem is biztos, h olyan egyertelmu az arelony
- te rakod ossze a gepet, de kulonosebben nem ertesz hozza, akkor sok ponton elcsuszhat, pl. HW elemek kompatibilitasa, idoben neked sokaig tart, feluton rajossz, h megsem megy neked stb.
- future proof megoldast akarsz: ha te lelepsz v. elut a villamos, mennyire szenved meg az adott megoldassal a ceg es mennyi eselye van neki?

Biztos van meg ezer szempont.

A POWER8 8 maggal (64 szál) 24/7-ben bírja, vízhűtés nélkül. ;)
Valószínűleg kisebb is elég lesz.

Én POWER-t még csak képen láttam, de itt lehet látni POWER9-et is: https://www.raptorcs.com/content/TL2SV1/intro.html

Korábban mindenféle tesztekhez biztosítottak remote hozzáférést, egy próbát megérhet.

Az volt a legutóbbi hír, hogy pl. Googlenél egyre több POWER alapú cuccot futtatnak bizonyos feladatokra, mert hatékonyabb mint x86 és a teljes stacket kontrollálni tudják (az OpenPOWER nyitottsága miatt) a firmware-ig, sőt talán mikrokódig bezárólag.

5000 dollárért sokallom első ránézésre, mert sok jó dolog van benn, de nekem nincs rá szükségem. Illetve megint ott van a dolog, hogy ha elromlik a táp, akkor szép meg jó hogy kicsi és célspecifikus, de nem lehet gyorsan és "olcsón" cserélni. És még mindig kérdés a magonkénti teljesítmény.

Egy redundáns táppal alapvetően nem csak "ritkábban faktort" veszel, hanem rendelkezésre állást és jóval gyorsabb szerelhetőséget. Coldswap táp egytápos szerverben is létezik, az sem utolsó, hogy legalább a csere plug-and-play.

Itt arról van szó, hogy mondjuk veszel 3db workstationnek már beillő gépet, valamilyen jóféle táppal, legyen FSP, Seasonic vagy bármi hozzájuk hasonló. Ha mondjuk hogy normálisan szellőző helyen is vannak, a bő 1kW-os hőtermelés nem piskóta, és előbb utóbb az egyik meg fog állni. A nagy kérdés innentől, hogy ha kiesik a kapacitásod harmada és esetleg elvész sokórányi workload, az mennyire elfogadható? Mennyi idő lesz a teljes kapacitás helyreállítása, úgy számolva, hogy eleve vettél mondjuk 4. tápot a polcra.

A második kör, hogy a workstation jellegű vasak mennyire fogják elviselni a 24/7-es fullos kihajtást, illetve amit összeraktál sima hw-ekből az mennyire tudja.

Innen pedig visszakanyarodunk az elejére, hogy mennyire vagy hajlandó hallgatni arra aki már ezen végigment vagy csakazértis végigjárod magad eme rögös utat. :)

Nem mondom, hogy mindenképp tripla-redundáns extrém módon tesztelt szervereket vegyél. Azt mondom, hogy fel kell mérned, hogy mi az ami neked elfogadható. Simán lehet, hogy N+1 jellegű tartalékolással elvagy, mert nem probléma, ha később végeznek a számítások.

HPC vonalra példul van (azaz volt) a Supermicro-nak 1U-s 1 tápos, de 2 szervert tartalmazó, Twin fantázianéven futó doboza: https://www.supermicro.com/products/system/1U/1028/SYS-1028TR-T.cfm
Gondolom e mögött eleve az a logika, hogy a redundancia sw-ből megy és ha néhány racknyi ilyenből 2-3 épp halódik az sem befolyásol sokat... :)

Redundáns táppal és 2U-ban 4db node-dal van EPYC-kel is: https://www.supermicro.com/Aplus/system/2U/2123/AS-2123BT-HTR.cfm
Ebben az esetben valszin a költségvetésbe belefér egy extra redundáns tápmodul rendelése is, az jól jöhet a polcon.

Pontosan, eldobóra akarok sok magot, alaplap és memóriával, semmi más nem kell gyakorlatilag. Pendrive-ról fog menni a boot és memóriában fog számolni (most is így megy). Ehhez minek nekem drága egyéb redundancia? Ha elhal, gyorsan kárek még egyet (nem számít 1-2 nap kiesés).

Igazából bővíteni tervezem hogy legyen 2-3 gép a mostani 3 mellé, így kieshet akár 2 is, nem számít, mert a cluster algóm által fogadott payload a feladatról az elérhetők között oszlik el, tehát nem kritikus és lesz idő vásárolni - mondjuk ha rendelni kell, az tényleg nem 1-2 nap, de minél több gép van, annál kevésbé érződik. Lehet fél év múlva meg már 16 magosok általánosak lesznek és még inkább elérhető lesz a nagyobb széria akár raktáron.

Azzal szamolj, h az nem 1-2 nap kieses, hacsak nincs olyan forrasod, ami tenyleg tud neked olyan hataridovel (ebben az esetben gondolom *akarmilyen*) HW-t szallitani.
Ha ezt te a szoftver oldalon megoldod, hogy fusson akar egy kavefozon, akkor nyert ugyed van.

Szerintem akkor menj be a beszallitodhoz es kerd, ami van neki ezen a vonalon.
Jopar eve neztem, hogy i7-esekbol hogy lehetne osszerakni compute farmot. Anno akkor az jott ki, hogy bar vannak cegek (kulfoldon), akik desktop PC-re epulo ilyesmi cuccokat csinalnak, de vegeredmenyben nekem nem erte meg.

De nekem szamitott a helyfoglalas, a menedzsment, az ECC stb. Neked viszont nagyobb a szabadsagod, ha jol ertem.

Meg sok evvel ezelott video renderelesre hasznaltunk sok intel desktop PC-t. Semmi mas nem erte meg ott akkor jobban, papir vekony, legoccsobb hazakba mentek az MSI v. Asrock alaplapok es minden masbol is a legegyszerubb, aztan jo volt. Nehany evig zorogtek, aztan kuka.

Ha meg nem volt kulonosebben tesztelve akkor elso korben azt mondanam fuss neki felhos vagy szerverberlos megoldassal par napig/hetig hogy lasd gyakorlatban is tenyleg ugy skalazodik-e a program es valoban ugy mukodik-e ahogy tervben van vagy esetleg rossz a koncepcio/kod stb es akkor nem azutan jossz ra, hogy kidobtal egy vagyont a sajat szerver vasarlasra.

Egyebkent 2 procit egy alaplapra nem fogsz rakni desktop procibol, szerver procik vannak felkeszitve arra hogy van bennuk x csatorna dedikaltan a 2 (vagy akar 4, tipustol fuggoen hogy 2 vagy 4 socketes kialakitast tamogat) proci kozotti kommunikaciora egyebek mellett, ami jo esellyel ecc ram-ot is jelent majd dragabban.

Meg amit meg erdemes szamolni ha mar cpu+memoria kell a proginak hogy mennyire memoria intenziv, mert desktopok tobbsegenel 2 csatornas memoria van (threadripper-nel azt hiszem 4), mig ugyanez szerverben mar 8.

Konnyebb lenne a dolgod ha tobb szerverre is tud skalazodni a progi, mert akkor kb ugyanott vagy teljesitmenyben ha gepenkent 1 proci, hozza valo memoriaval van szerelve es tobb ilyen geped van, de arban olcsobban ki lehet hozni (pl desktop megoldasokkal) ha az a lenyeges szempont, mint a tobb socketes megoldasokat.

Köszi, jelenleg élesben fut több gépen több magon (minden mag maxra kihajtva). Tehát eleve clusterosítottam, több kód réteg van és több rétegben párhuzamosítottam. Szóval maxra ki tud hajtani bármit.

Memóriát folyamatosan mérem mert valóban fontos és pontosan meg van hogy magonként kell 1G, tehát 64 szálnál 64G elég lesz.

A felhő nagyon drága, számolgattam, kb 6 hónap alatt (vagy kevesebb) vissza hozza az árát.

Tehát működik de nagyobb sebesség kell. Nem kell rendelkezésre állás, hanem csupán nagyobb sebesség. Így nem akarok X db zugó cuccot betenni sehová, hanem 1 v max 2 komolyabb PC sok szállal elég lenne jobb táppal és jobb hűtéssel.

Úgy számolgattam hogy gépenként 0.8 - 1 millió forint megérné.

Kieg: német oldalon valami 1.2 millió forintra jött ki Threadripper 128G rammal alaplappal, de ez csak első rákeresés volt. Nyilván az árnak utána lehet jobban járni, kérdés az hogy hardveresen sok szálú cpu-nál melyik jobb megoldás, illetve alaplapba több proci megy-e? ha szerver verzióba megy több cpu, akkor az mennyivel drágább és megéri-e?

Köszi.

Nézz szét a spec.org-on a SPEC CPU2017 Integer Rate benchmark eredmények közt.
Advanced searchnál a core szám alapján is tudsz keresni. Itt ugyan komplett konfigokkal tesztelnek, viszont
elég jó viszonyítási alap a cpu-k összehasonlítására.

Ha az egyszálas teljesítmény érdekel, akkor a SPEC CPU2017 Integer benchmarkot kell nézni.

Ha több cpu-t akarsz belerakni egy gépbe, az nem a desktop kategóriában találod, 128GB-rammal pedig inkább (nettó) 2 millió körül fog kijönni a szerverek darabja

Lehet, hogy hülye kérdés, de ezt a feladatot csak cpu-val lehet számolni, vagy GPU-val is?
Utóbbiból jóval több kraft beletolható egy vasba...

Xeon Gold vs AMD Epyc vs POWER9 Phoronix tesztek nézegetését javaslom. Több féle szintetikus benchmark-kal is jelent meg már összehasonlítás. Úgy emlékszem volt teljesítmény/költség mérés is. Keresd meg azt a tesztet, ami a te tervezett terhelésednek leginkább megfelel.
pl:
https://www.phoronix.com/scan.php?page=article&item=power9-epyc-xeon
https://www.phoronix.com/scan.php?page=article&item=amd-epyc7601-2p
https://www.phoronix.com/scan.php?page=article&item=power9-talos-2

"Jegyezze fel a vádhoz - utasította Metcalf őrnagy a tizedest, aki tudott gyorsírni. - Tiszteletlenül beszélt a feljebbvalójával, amikor nem pofázott közbe."

Szerintem valami dual socket supermicrot lenne èrdemes beprobálnod epyc el jó hozá a standard atx táp, nincs vendorlockin, ès perpillanat epycel tudod elèrni a legtöbb threadet 1 deszkán. Árban sincs sok differencia a TR alá kèszült lapok közt, cpu tán kicsit drágább.

Nem trollkodni akarok meg megtéríteni, csak kérdezem:
Ha ennyire jól párhuzamosítható, akkor nem lehetne Hadoop/Spark-ra átírni, azt kvázi végtelen számú node-on tudod futtatni valamelyik tier1 cloudban... (ha már a budget is nagy)
És a bekerülés is használat alapú lesz.