Stránka 24 z 25

Re: Aplikace

Napsal: stř 09 srp, 2017 21:47
od Dadu from Silesia
Dzordzik píše:Takže máš denní RAC kolem 74 000 jestli dobře počítám průměrný čas dejme tomu 2300s při 4 tascích najednou.
U mě byl problém pro změnu mezi klávesnicí a židlí. HW jsem vypnul HT ale v cc configu zůstal počet jader 88 a on je emuloval a počítal 88 výpočtů na 44 fyzických jádrech. Proto takovej maglajz. Už jsem se vyfackoval. Zrovna počítám 44 jednotek najednou pomocí SSE3, pak pomocí AVX a nakonec FMA. uvidíme co z toho vyleze za výsledky. Pak to sem postnu jestli je zájem.
sem sním 45uu

Re: Aplikace

Napsal: čtv 10 srp, 2017 05:25
od Dzordzik
Tak zatím otestováno:
SSE3 (44 tasků při 2805 MHz) - denní RAC 282k.
AVX (44 tasků při 2605 MHz) - denní RAC 432k
FMA budu testovat večer.

Re: Aplikace

Napsal: čtv 10 srp, 2017 20:03
od Dzordzik
eisler jiri píše:dzordzíku je mi jasné, že to myslíš dobře. ale uvědom si, že jsme každý jiný ročník a co je pro tebe halířofka, pro mne občas neskutečný problém. jistě bych toho compíka na balkón donesl, ale pokud bych se k němu sehnul tak se tejden nezvednu 45hh holt jsem si přivodil mnoho komplikací sportem a špatnou životosprávou. ale na 70let to zase není tak hrozné. to mí spolužáci (ty srazy) jsou na tom již z více než z 40% lépe (jsou již za vodou) můj táta to taky zabalil v 63letech :smt102 45kk 45kk 45kk
před deseti lety bych si něco podobného ani nepřipustil.
proč asi myslíš, že jsem se vzdal auta? protože již pro mě nebylo užitečné. jezdit bylo bez problémů, ale odnést nákup do auta :smt102 a gdyž jsem kvůliva čištění vozovek v dubnu musel odstavit asi o šest set metrů dál, tak jsem myslel, že dojít domu se mi nepodaří letos.
jasně, že toto do tohoto vlákna nepatří tak to nenym klidně smázni
Chápu, každému z nás jednou nebude hej, dřív nebo později. Pošli mi do SZ co jsem ti psal a pořešíme to ja?

Re: Aplikace

Napsal: čtv 10 srp, 2017 20:04
od Dadu from Silesia
Takže bych měl mít necelý dvojnásobek výkonu na jádro při avx ty máš 9800, já mám 18500.

Re: Aplikace

Napsal: čtv 10 srp, 2017 20:31
od Dzordzik
To jo ale máš taky skoro 2násobnou frekvenci.

Re: Aplikace

Napsal: čtv 10 srp, 2017 20:32
od Dzordzik
To jo ale máš taky skoro 2násobnou frekvenci a novější řadu CPU s lepším IPC.

Re: Aplikace

Napsal: čtv 10 srp, 2017 22:01
od Dzordzik
Tak jsem dotestoval Asteroids s takovýmito výsledky:

při 44 souběžně počítaných tascích Asteroids:
SSE3 / 2800 MHz prům. čas na jednotku 6469 a denní RAC 282 072
AVX / 2600 MHz je to 4221 a RAC 432 337
FMA / 2600 MHz 4343 a RAC 420 139.

Takže AVX je u mě nejefektivnější. U FMA je i cca o 1-2 st menší teplota jader. Tak jak tak se to ale drží kolem 50st ať dělám co dělám.

Re: Aplikace

Napsal: ned 13 srp, 2017 09:32
od forest
Moc díky za ty výsledky. Na jeden stroj je to neskutečná porce výkonu. Je to jako mít celou farmu v jedné skříni 22rrr

Re: Aplikace

Napsal: ned 13 srp, 2017 13:23
od Dzordzik
Mě na tom hlavně řtěší to ticho a teploty pokud jde o CPU. Samozřejmě grafiky jsou jiná káva, ty jak sepnout, tak je veselo. A to tam jsou zatím jenom dvě. naštěstí chlazení je nadimenzované snad dobře, tak doufám že to bude ok až jich bude víc.

Re: Aplikace

Napsal: úte 23 říj, 2018 23:09
od nenym
Czech Human píše: úte 23 říj, 2018 22:21... Škoda jen že asteroidy nemají opencl aplikaci pro AMD a GPU aplikace pro nvidii je výkonem dost bída oproti dnešním 32/64 vláknovým CPU....
Ono je to trošku úplně naopak. NV aplikace zase taková bída u GPU se slušným výkonem v DP není, spíše je to standard; Zdenkovi se však podařilo až neuvěřitelně dobře optimalizovat kód pro CPU/AVX2 a to ne nějakými přepínači kompilátoru, ale kód napsal víceméně znova.

Re: Aplikace

Napsal: stř 24 říj, 2018 19:19
od Czech Human
To asi ano, je to dobrý programátor. Místo SMT se zaměřil na dobré využití jednoho jádra a paralelismus zpracování vzhledem k snesitelnému času na zpracování jedné úlohy dává velmi pěkné výsledky. Ta aplikace je dobře algoritmizovatelná za využití moderních instrukčních sad a kyong to umí a ví přesně co chce. Taky bych rád uměl programovat jako on. :smt045

Re: Aplikace

Napsal: stř 24 říj, 2018 20:31
od nenym
Upřesnění - optimalizaci pro moderní instrukční sady psal Zdeněk Vašků, nikoli kyong.

Re: Aplikace

Napsal: stř 24 říj, 2018 21:14
od Czech Human
Aha, to jsem nevěděl. Bylo by zajímavé kdyby s ním byl třeba nějaký rozhovor na toto téma pokud už v minulosti neproběhl nebo malý článeček, myslím že nejen já bych si rád přečetl jak se taková aplikace vyvíjí a optimalizuje. :-)

Re: Aplikace

Napsal: stř 24 říj, 2018 22:09
od nenym
Humane, řekl bych, že jsi byl přímo v centru dění viewtopic.php?f=284&t=2956&start=300#p67770. Asi jsi nezachytil, že vývoje do aplikací s pokročilými instrukcemi jsme byli zapojeni nejméně tři. Zdenek kódoval, já jsem testoval aplikace na rozsáhlé množině CPU, které jsem měl v té době po palcem spolu s dalšími masochisty a kyong upravoval server na stále se měnící nové aplikace. Zejména Zdenek a kyong měli pěkný fofr.

Re: Aplikace

Napsal: stř 24 říj, 2018 22:48
od Czech Human
Díky za odkaz, já si to zpětně pročtu. Ale já jsem takový zvědavý invalida Karásek - mě by zajímaly technické detaily jako v jakém jazyku to je napsané, případně co přidalo výkonu více a co méně, prostě takové třešničky co se na fóru neřeší, tady se leda porovná čas výpočtu a maximálně OS + architektura na které to běželo :-). Ale také si uvědomuji že jednak to snadno může být obtížně vysvětlitelné a není to na 5 minut a že Zdenek nemusí být ani moc ochotný se bavit s náhodnými lidmi z internetu o svém know-how :-). Já se totiž pořád ještě nezbavil touhy vzít i asteroidní GPU aplikaci a přidat ji do testovacího skriptu i když je jen pro nvidii, tak mě zajímaji i věci okolo. Je škoda že není aplikace taky pro AMD, to by mohlo elegantně přidat další výkon navíc (a já bych mohl počítat rychleji coby majite více AMD karet než Nvidia). 45cc

Re: Aplikace

Napsal: pát 26 říj, 2018 15:48
od zdenek
Ta třeba:

CPU:

Kód: Vybrat vše

coef = sig[np1] * Lpoints[i] / ave;
for (l = 1; l <= ma; l++)
	dytemp[jp][l] = coef * (dytemp[jp][l] - ytemp[jp] * dave[l] / ave);
CPU s AVX:

Kód: Vybrat vše

coef = sig[np1] * Lpoints[i] / ave;
avx_coef=_mm256_set1_pd(coef);
avx_ytemp=_mm256_broadcast_sd(&ytemp[jp]);
for (l = 1; l <= ma; l+=4)
	{
		__m256d avx_dytemp=_mm256_loadu_pd(&dytemp[jp][l]),avx_dave=_mm256_loadu_pd(&dave[l]);
		avx_dytemp=_mm256_sub_pd(avx_dytemp,_mm256_div_pd(_mm256_mul_pd(avx_ytemp,avx_dave),avx_ave));
		avx_dytemp=_mm256_mul_pd(avx_dytemp,avx_coef);
		_mm256_storeu_pd(&dytemp[jp][l],avx_dytemp);
	}

Re: Aplikace

Napsal: pát 26 říj, 2018 20:23
od Czech Human
Díky za rychlou odpověď, je taková příjemně lakonická 22rrr. Ale pro pochopení rozdílu myslím pěkný příklad, pro AVX je nutné aplikaci výrazně přepsat. Hádám že napsané to je v C++, ale to neznám. Zaujalo mě to zvýšení o 4 místo o 1 v cyklu. Pokud jsem to správně pochopil tak si načte do registru, udělá 2 operace a uloží výsledek do registru a začíná další cyklus. Jinak jsem laik tak jestli píšu něco co tahá programátorské oči tak budu rád za upřesnění a není to úmyslně 45hh.

Re: Aplikace

Napsal: sob 27 říj, 2018 15:56
od zdenek
Obecně řečeno, každou aplikaci je nutné přepsat pro SSE, AVX, FMA. Kompilátor to nijak zázračně nezajistí.

Re: Aplikace

Napsal: sob 27 říj, 2018 22:53
od Czech Human
Jasně no, kompilátor jen přeskládá kód do formy srozumitelné CPU, není to AI entita co zpřehazuje výpočty definované v programu na případně výkonnější instrukce sama od sebe, to by asi programátoři už před nějakou dobou přestali být potřební. 45cc Každopádně díky za poskytnutá vysvětlení.

Re: Aplikace

Napsal: pon 05 lis, 2018 20:43
od Czech Human
Dá se někde nějak podrobněji nastudovat jak je popsán matematický model výpočtu parametrů pro asteroidy aby si to mohl přečíst i externista, nebo se jedná o know how projektu?