Szervert keresek, végeselemes feladatokra

Üdv mindenki,

Szervervásárlásban lenne szükségem segítségre, elsősorban viszonteladóra illetve tanácsokra. Végeselemes számításhoz kell összeraknom gépet és sajnos a keret nem túl nagy, kb. 1M forint. A szempontok:

Minél több memória, a végeselemes számítások egyik jellemzője, hogy gyakorlatilag nincs az memória amit ne tudna elfogyasztani. Így aztán elsősorban olyan gépen gondolkozom, ami helyből félig van memóriával, és utána viszonylag nem drágán bővíthető, azaz elmegy a brand memória mellett a kingston vagy hasonló is (feltéve ha árban van érdemi különbség).

A specifikáció szerint jobb ha ugyanaz a teljesítmény kevesebb magon jön - ez mondjuk annyira nem meglepő -, így nincs szükség pl. 128 magra, inkább négy-nyolc, de az fürge legyen. Persze itt megint az ár számít, de itt a kevesebb mag a jobb. A nagy L2, L3 cache viszont fontos, ez az egyik döntő paraméter két hasonló CPU esetén.

És nagyjából ennyi. Disk IO-ra érzékeny a cucc, de a várható adatmennyiség elfér egy SSD-n, az OS meg kuporogat pörgettyűs disken is, ha swapolni kell, akkor már úgyis régen rossz (bár lehet hogy az SSD swap nem halott ötlet). De a lényeg, hogy diskből nem kell sok, se kapacitásra, se darabszámra nézve.

--- UPDATE ---

Úgy néz ki, hogy az se értelmetlen, ha blade rendszert építünk, blade-enként mondjuk 8/16G memóriával + SSD-vel, _esetleg_ FC-n át (IOPS ftw) kitolt raid0 (igen) SSD tömbből faragott diskkel, ha egyáltalán elképzelhető ilyesmi 1M körüli összegnél. És ha van értelme FC (nem tudom melyik mekkora IOPS-t tud elvileg, a költségkeret némiképp limitált ugye) mögé SSD raid0-t tenni.

Szóval kissé nőtt a változók száma, és még csak most kezdtem utánaolvasni, hogy merre van az előre.

Két megoldást tudok elképzelni, az egyik az egy már nem épp a legújabb szerver, ami már kifutó áron van, a másik viszont egy consumer alkatrészekből összeállított gépezet. Ez utóbbival az a baj, hogy valószínűleg nem tolható bele elég memória (64 - 128G pl.), de nem tudom hogy hol tart ma a tudomány (igen, tudok rendelni Tyan meg Supermicro meg még ki tudja milyen alaplapokat, de az nem a consumer kategória).

Konkrét tapasztalatok is érdekelnek ha valaki mostanában foglalkozott ilyesmivel, illetve ha a beszerzésben tud segíteni valaki, akkor a hupon át megtalál.

Előre is köszönöm.

Hozzászólások

Mi kb. br 1M-ből vettünk Supermicrot, 64G rammal, viszont nálunk a lassabb, de több CPU volt a lényeg. 2RU-s kivitel, redundáns táp, stb.

Azt, hogy mennyi modult tudsz belerakni az a CPU-k számától is függ, illetve, hogy mennyi RAM-ot támogat. LGA105x-ek általában 32G-t. Egy LGA2011-esnél viszont van 8 RAM foglalatod / CPU. 1 CPU-val még szerintem olcsón kivitelezhető 8x16G egy erősebb CPU-val, opcionálisan egy socketes lappal. Két socketesnek viszont előnye, hogy később egy + CPU-val bővíteni is tudod.

Kérdés még az, akarsz-e normális házat/tápot, van-e igény a rack kivitelre, stb.

Esetleg, ha dobsz egy mail címet, továbbítom a salátásoknak, árakkal ők tudnak nyilatkozni. (Supermicro nálunk a fő profil.)

----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™

Mi a motor? Ansys? Ha jól rémlik az már számol GPU-n is. Ezen felül a legtöbb megoldó alapja az Intel MKL, úgyhogy olyan Xeon-t néznék, amibe integrálva van az Intel Phi.

Szerintem Azure/EC2 is játszhat, ha csak projekt munka. Én dolgoztam nagy modellekkel, de a legtöbb helyen elég ritka az olyan, amihez folyamatosan ekkora vas kell.

Ja: HDD: Ansys és Marc esetében és főleg tranziens vizsgálatoknál nincs az a storage, ami nem telik be. Szóval azt szerintem alulméretezted.

Memória: az Ansys 32 GB (lehet, hogy csak 16 GB, rég volt) felett más megoldót használ, ami hatékonyabb, de igazán 64 GB felett működött szépen. Mi nagyjából 1.000.000 ismeretlennel számoltunk akkoriban. Viszont ECC kell: csúnya dolgok tudnak jönni memória hibánál.

Ha bármi kérdésed van, nyugodtan kereshetsz privátban is!
--
http://naszta.hu

Nastran. A GPU-s számítással eléggé hadilábon áll(*), a nálunk jellemzően előforduló problémák igen rosszul teljesítenek GPU-s környezetben. Szintén rossz szemmel néz a Phi-re, de ez elvileg változni fog, így ez a szempontok között szerepel. Az egyelőre belőtt memóriaméret a 96GB, ez reálisnak tűnik, de holnap - ma - fogok konkrét számokat róni szép táblázatokba.

Csak fizikai hw jöhet szóba, az nem jó, amibe nem lehet belerúgni.

A HDD méret az elmúlt évek tapasztalatai alapján lett belőve.

*) A megoldója egy dinoszaurusz, szerintem az eredeti fejlesztők unokái is nyugdíjba mentek már.

Hát, Nastran-t nem ismerem, de tény, hogy már 2000-ben is inkább az MSc Marc-ot választottuk helyette, szóval nem fiatal.

Ami még eszembe jutott, hogy az OS is számíthat: 2006-ban az ANSYS alatt próbáltuk őket: a Window 2003 kb. 30-40%-kal gyorsabb volt, mint a Suse (talán már volt Enterprise, akkor az) 2.4x-es kernellel. Azóta lehet ez akár fordítva is, de egy szimulációt megér.
--
http://naszta.hu

Az a baj hogy én se, eddig csak Ansys, Abaqus volt a kezeim közt. Ez egy teljesen másik állatfajta, pl. memóriából keveset használ, cserébe mindent diskre ír, így a hivatalos javaslat az az, hogy adjunk neki mondjuk 8G (az már bőven sok általában) memóriát a számítási feladatokra és 80-at arra, hogy ahelyett hogy a diskre írná amit akar, tartsa memóriában (kvázi ramdisket csinál magának).

Állítólag nem szereti az SMP-t, jobban fut-szalad ha több gépre van szétosztva a feladat. Négy magnál van az optimum, afelett meredeken csökken a nyereség, így úgy néz ki, hogy négymagosnál "több" gépet felesleges venni. Persze kérdés - ezt most olvasgatom - hogy mi a kotta ha egy gépen fut, de 2-3-4 példányban elindítva, esetleg virtualizálva. Ezeket szerencsére mind tegnap tudtam meg... na mindegy, mindig tanul az ember.

Ami persze majd fájdalmas lesz, az a licencelés, egyelőre még rá se mertem kérdezni, hogy pontosan hogy, mert azért az se nagyon mindegy hogy hogyan számolják (szinte biztos hogy magonként, de állítólag 16 oldal a licencelésnek csak a vázlata), egyelőre próbálom felmérni a lehetőségeket.

Én a virtualizációt nem erőltetném, inkább több olcsóbb vas: annak idején, amikor saját megoldón dolgoztunk, jobb eredményeket értünk el, ha nem csak virtuálisan (malloc, new, etc.), hanem fizikailag is folytatólagos memóriát használtunk (ha a malloc-tól nagyobb területet kérsz, mint ami fizikailag folytatólagosan rendelkezésre áll, akkor több lapból állítja össze a területet). Erre volt lehetőség Windows alatt, bár eléggé fájdalmas volt (először meg kellett tudni, mekkora a hely, majd meg kellett próbálni lefoglalni, ha nem jártál sikerrel, akkor újra kérdez, újra próbálsz foglalni, mindezt addig, míg nem jártál sikerrel; Windows Internals rulez :)). A jobb CPU cache-el kapott teljesítmény viszont 20-30%-kal jobb volt, mint a gyári malloc/new-s verzió. Jó eséllyel a jobb megoldók csinálnak hasonlót, feltételezem a Nastran is. Például az Intel MKL-nek is saját allokátor függvényei vannak (ld.: mkl_malloc és mkl_free). Nem vagyok meggyőződve arról, hogy egy virtuális gépen ezek jól/elvárt módon futnak, tehát ennyivel is lassabb lesz a futás.

Licenc: ezek elég drága holmik, az 1 milliós gép ezekhez low-budget kategória sajnos (ANSYS-ból kiindulva). Egyébként valószínűleg ennyiből egy gépen sem biztos, hogy kijöhet a maximum teljesítmény, a több géphez (néhány licencnél több CPU-hoz) meg több licenc is kell. :( Mivel egy szimpla licenc ára is többszöröse a jelenlegi gép árának (legalábbis ANSYS-nál és Marc-nál, ezeket ismerem), nem lenne érdemes több pénzt áldozni a vasra?

Update:
Nem is értem eddig miért nem kérdeztem: mekkorák modellek? Mekkora a tipikus és mekkora a várható legnagyobb modell? Ha csak apróbb dolgok futnak (10-50.000 ismeretlen), akkor egy desktop PC is elég. Ha nagy modellekkel pörögtök (100.000 ismeretlen felett), akkor meg határ a csillagos ég. Szóval először azt tisztázd, hogy mekkorák a modellek!
--
http://naszta.hu

Jelenleg desktop PC-n fut, 16G rammal, ez általában elég, de a disk IO ami megöli, akkor, amikor a feladat nem fér bele a memóriába. Akkor átkanalazzuk egy lasabb gépre, amiben van 32G (vagy 64, már nem is tudom), és még mindig hamarabb megvan, de ennek meg egyéb hátrányai vannak. Mivel én csak üzemeltetek, a végeselemes problémák egyéb paramtérereit nem ismerem (persze, mondták, de engem csak a szükséges erőforrások mértéke érint :D).

Jut eszembe, virtualizáció alatt elsősorban konténer alapút képzeltem el, mert a Nastran eléggé linuxbarát. gyanítom, hogy így más a memóriafoglalás. Persze tesztelni kéne mindenféle felállást, és persze idő az meg nincs.

A nagy CPU cache-t mindenhol írták, és az a baj, hogy alapvetően fogalmam sincs arról, hogy egy 16 magos CPU-nál, ahol mondjuk van 32M cache ez hogyan alakul ha csak négy magot használunk, rászögelve egy-egy threadet/processt/bármit, hogy ne rakosgassa ide-oda a nyomorult. Nagyon remélem, hogy ez nem úgy működik hogy 16x2M és ha négy magot használunk akkor az effektíve 4x2M cache, hanem 4x8M, de ennek megint utána kell olvasnom, hogy a kiszemelt CPU típusok azok most így hogy. Ezért linket, tanácsot örömmel veszek, általánosságban is, mert egyelőre még semmi se biztos.

Licenc, sw/hw, egyéb mellékszál: olyan beszerzésről van szó, aminek egy része pár munkaállomás, egy másik része végeselemes futtató gép, illetve egy megint másik része a licenc. Szóval az 1M csak töredéke a elkölthető összegnek. Csak hogy ezt a részt lezárhassuk.

" Nagyon remélem, hogy ez nem úgy működik hogy 16x2M és ha négy magot használunk akkor az effektíve 4x2M cache"

Ez attól függ, hogy milyen cache. L3 pl. shared, de nyilván csak CPU-n belül, ha már a QPI buszhoz kell nyúlnia, akkor lassít. L1, L2 Core szinten van.

----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™

Igen, közben már utánaolvasgattam. Ahogy olvasok, úgy lesz egyre rosszabb a helyzet, a különböző problémák különböző solvert igényelnek, ami alapvetően nem baj (vagy meglepetés), csak mindegyiknek másmilyen az ideális hw környezet. Kezd körvonalazódni kép, hogy nem lehet jól választani.

Bezzeg a régi szép időkben, amikor renderfarmot kellett csinálni... ehh.

Köszönöm mindenkinek a segítséget, állati tanulságos volt. Csak egy apró részlet, az eredetileg legszimpatikusabb cég még mindig nem küldött árajánlatot. Sokat tanultam ez alatt a pár nap alatt.

HP munkaállomás, mert elfér bele elég memória, és attól hogy nem szerver hanem munkaállomás, már eleve olcsóbb.
A konkrét eredményekre még elég sokat kell várni, kétlem hogy idén tudnék futásidő-összehasonlításokat gyártani. Illetve nem, ránéztem a naptárra, és kizárt :D

Pontosan melyik? Milyen CPU -val és mennyi/milyen rammal? Pusztán kiváncsiságból :-)

Megjött az az ajánlat is (ami ráadásul tartalmaz vitatható kitételeket is), amire 22-én azt mondták hogy egy-két nap.
Azt hiszem ez az utolsó, több már nem fog jönni.