Linuxový cluster pro výpočty

Linuxový cluster pro výpočty
« kdy: 27. 06. 2018, 16:13:57 »
Zdravím,

máme výpočetní aplikace, které potřebují hodně vláken (desítky) a cca 2 GB paměti na vlákno po dobu několika dní.

Uvažujeme o tom, jestli by bylo vhodné a realizovatelné spojit několik pracovních stanic (3-4x workstation, 4-16 jader, Intel i AMD) do nějakého virtualizovaného stroje, který by se vůči výpočetním aplikacím prezentoval jako jeden stroj s mnoha jádry (kvůli kompatibilitě s aplikacemi).

Má smysl řešení typu virtuální cluster ubuntu s VMWARE nebo VirtualBoxem?
Jaké můžeme očekávat snížení reálného výkonu oproti jednoduchému součtu výkonů jednotlivých stanic?

Díky za rady.
« Poslední změna: 27. 06. 2018, 16:27:02 od Petr Krčmář »


ckould

Re:Linuxový cluster pro výpočty
« Odpověď #1 kdy: 27. 06. 2018, 16:57:30 »
Mas cloud k dispozicii: AWS, GCP,..  . Naklikas si masinu(y) aku potrebujes a ked skoncis vypocty po 2 dnoch tak ju zrusis.

trubicoid2

Re:Linuxový cluster pro výpočty
« Odpověď #2 kdy: 27. 06. 2018, 16:58:28 »
no a ta aplikace je SMP nebo MPI? MPI je triviální
na SMP potřebuješ něco jako Beowulf cluster

Jenda

Re:Linuxový cluster pro výpočty
« Odpověď #3 kdy: 27. 06. 2018, 17:21:23 »
máme výpočetní aplikace, které potřebují hodně vláken (desítky) a cca 2 GB paměti na vlákno po dobu několika dní.

Desítky, takže třeba AMD ThreadRipper nebo EPYC?

Jaké můžeme očekávat snížení reálného výkonu oproti jednoduchému součtu výkonů jednotlivých stanic?

Podle aplikace. Pokud vlákna nesdílí prostředky, tak žádné. Pokud je to hodně propletené sdílením dat, může to klidně být v poměru latence technologie co použijete na propojení ku latenci L3 cache (tj. třeba 1000x).

JardaH

Re:Linuxový cluster pro výpočty
« Odpověď #4 kdy: 27. 06. 2018, 18:15:52 »
Mas cloud k dispozicii: AWS, GCP,..  . Naklikas si masinu(y) aku potrebujes a ked skoncis vypocty po 2 dnoch tak ju zrusis.

Tohle je cesta, kterou bych šel já, automatizuješ si deployment, pustíš výpočty, uložíš si výsledky a zhodíš mašinu.

Nadupaný mašiny tě budou stát cca jednotky dolarů na hodinu.  Taková c5.18xlarge s 72 CPU a 144 GB RAM je za $1.116/hr, viz https://calculator.s3.amazonaws.com/index.html.

Takže pokud pracuješ v podmínkách, že včera bylo pozdě a všechno chceš hned, tak cloud je skvělá volba. Jestli se ti spíš vyplatí opečovávat inhouse hardware, si spočítej sám...





uuuuuuuuu

Re:Linuxový cluster pro výpočty
« Odpověď #5 kdy: 27. 06. 2018, 19:14:31 »
Molekularni simulace se delaji na MPI clusterech, jednotlive procčsy komunikuji zasilanim zprav MPI.

uuuuuuuuu

Re:Linuxový cluster pro výpočty
« Odpověď #6 kdy: 27. 06. 2018, 19:32:19 »
Molekularni simulace se delaji na MPI clusterech, jednotlive procčsy komunikuji zasilanim zprav MPI.

a uzly se propojovaly myrinetem, ktery mel nizsi latence nez ethernet.

Re:Linuxový cluster pro výpočty
« Odpověď #7 kdy: 27. 06. 2018, 19:51:51 »
Díky za reakce.

- software je proprietární, primárně SMP, pro proteomické a metabolické výpočty
- používá lineární solvery (IPOPT apod.), generování extenzivních databází a jejich prohledávání, NVMe a mnoho vláken je nutnost
- je to hodně interaktivní proces, takže předplacení na výpočetním cloudu není ekonomické
- ano, threadripper je příští volba, s tou latencí vůbec nemám představu. Mohu je propojit gigabitovou linkou, což je asi maximum.

Máte někdo zkušenost s virtual SMP řešením od VMWARE nebo VirtualBoxu?

uuuuuuuuu

Re:Linuxový cluster pro výpočty
« Odpověď #8 kdy: 27. 06. 2018, 20:35:35 »
Pokud jsčm cetl spravne, tak nejde spojit vice uzlu v siti, aby se to
chovalo jako jeden SMP stroj.
myslim, ze ani vmware ti tohle neudela.

uuuuuuuuu

Re:Linuxový cluster pro výpočty
« Odpověď #9 kdy: 27. 06. 2018, 20:38:49 »
Smp z clusteru snad pomoci ScaleMP.

Re:Linuxový cluster pro výpočty
« Odpověď #10 kdy: 27. 06. 2018, 21:15:51 »
Díky, ScaleMP by bylo asi to pravé, ale chtějí certifikovaný HW i pro free variantu.

uuuuuuuuu

Re:Linuxový cluster pro výpočty
« Odpověď #11 kdy: 27. 06. 2018, 21:30:05 »
Kdysi jsem zkusil mosix, ale to uz je hafo let, tak nevim zda to ma smysl.

Homeatcloud

Re:Linuxový cluster pro výpočty
« Odpověď #12 kdy: 28. 06. 2018, 10:09:52 »
Zdravím!
Mosix jsem taky zkoušel, ale ten řešil jen meziprocesovou komunikaci pomocí souborů a rour. Sdílenou paměť a virtuální SMP neměl. Beowulf je podle mně ten správný odkaz. Ale je to špatný nápad. Na pracovních stanicích s gigabitovým Ethernetem bude vážně to zpomalení řádově 1000x.

Dost záleží na tom, jestli jste výzkumná instituce. V tom případě bych radil obrátit se na Metacentrum, kde jsou k dispozici výpočetní prostředky sdílené mezi veřejnými ústavy a univerzitami. Jste-li soukromá výzkumná instituce a máte granty, nejspíše se tam také dostanete, a nebo na superpočítače v Ostravě.

Pokud ne, mohu nabídnout u Homeatcloud výpočetní uzly s až 32 vlákny a 384 GB RAM. Dají se naklikat normálně v konfigurátoru Server Hosting ze serverů HPE co máme skladem a pronajímat s měsíčním závazkem https://www.homeatcloud.cz/server-hosting/konfigurator. NVMe bohužel nemáme, ale dají se zainvestovat. To bychom se ale museli domluvit nějak soukromě a sepsat na to smlouvu.

kkt1

  • *****
  • 796
    • Zobrazit profil
Re:Linuxový cluster pro výpočty
« Odpověď #13 kdy: 28. 06. 2018, 11:24:48 »
Kolik toho realne potrebujete a na jak dlouhou dobu? Do nejakych 60k vlaken? Nebo netusite a k tomu mate nejakou debilne napsanou aplikaci ktera neumi skalovat? Klidne pres sz.

Re:Linuxový cluster pro výpočty
« Odpověď #14 kdy: 28. 06. 2018, 12:17:10 »
Díky za info o latenci na Beowulf řešení i o Mosixu.

Metacentrum bez vyčleněného stroje je nepoužitelné. Když člověk zadá job na 48 cpu, tak akorát spadne do nekonečné čekací řady, a časem ještě hlouběji, protože optimalizátor vyhodnocuje úlohy pro 1-6 cpu jako realizovatelnější. Navíc je to velmi interaktivní práce, takže vlastní zdroje jsou nutné.

SW je kvalitně napsaný, škáluje sám a čím více zdrojů dostane, tím dříve se dopočítá řešení.