Stránka 2 z 3

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: stř 28 bře, 2018 19:31
od v.svantner
Honza píše:
v.svantner píše:Jestli to dobře chápu, tak na tom Intelu je nejlepší jet 2 jednotky s HT a na AMD 4 jednotky bez HT.
A jestli to dobře chápu, pak by podle Prime95 testu vycházelo, že 3GHz 10-core Intel je cca o 10% rychlejší než 3,4GHz 16-core AMD?
Je to tak "nová" verze Prime95?
A odpovídají tyto testy reálným výsledkům s LLR aplikací?
Stáhnul jsem verzi 29.4b8.

Jinak se mi zdá, že v reálu je intel silnější, určitě jak o 10%. Ale možná se mi to jenom zda, protože PG nepočítám krom pomoci CNT při soutěžích.

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: stř 28 bře, 2018 20:51
od Czech Human
AMD je na stejné frekvenci nejméně o 50% pomalejší, protože AVX se na AMD počítá 2 cykly oproti 1 cyklu u Intelu. Intel zase aby se udržel v TDP výrazně sníží frekvenci, což AMD nedělá tak ten rozdíl ve finále není tak markantní.

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: čtv 29 bře, 2018 10:46
od forest
Dzordzik píše:U mě, podotýkám že se zapnutým HT v BIOSu to vyšlo takto:
Timings for 1152K FFT length (44 cores, 8 workers): 1.60, 1.59, 1.36, 1.40, 1.66, 1.65, 1.39, 1.41 ms. Throughput: 5334.77 iter/sec. Tj. jet 8 jednotek najednou po 5 jádrech na každou s tím, že 4 jádra zůstanou volná. Předpokládám že pokud bych HT vypnul v BIOSu, bylo by to možná o fousek lepší. Jak je na tom Noname?...
Ještě jsem se do testů nevrhnul. Jelikož se na tento stroj v minupém kole ukázalo, že mně Prime95 neporadí vůbec nic a HT bylo výrazně výhodnější, otestuji jen několik nastavení s HT a nejlepší tam nechám.

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: čtv 29 bře, 2018 12:59
od Dzordzik
Tento projekt se ale chová jinak než ten původní, aspoň u mě HT nastavení výhodnější není. Bohužel budeš muset zase testovat odznova panáčku.

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: čtv 29 bře, 2018 13:23
od Honza
Jelikož jsem k Prime95 nedostal kloudné odpovědi ani na základní otázky typu "odpovídají tyto testy reálným výsledkům s LLR aplikací", kouknul jsem se tomu na zkoubek.
Existuje totož varianta, že kromě blbé velikosti FFT děláte i mnohem fatálnější chyby a testy ani nemouhou reálnému provozu odpovídat.

Doporučoval jsem mnohokráte testovat opravdovou LLR a testovat jednotky, co se na PG počítají a vysmrkat se na Prime95, zvláště při neznalosti toho, co se vlastně děje.

Podle mě by testování mělo vypadat zhruba takto:
d:\temp\LLR>cllr64.exe -d -q"200749*2^11375778+1" -t6
Starting Proth prime test of 200749*2^11375778+1
Using all-complex FMA3 FFT length 1152K, Pass1=384, Pass2=3K, 6 threads, a = 3
200749*2^11375778+1, bit: 80000 / 11375795 [0.70%]. Time per bit: 0.692 ms.
Všiměnte si parametrů: all-comple FMA3 FFT 1152K a Pass1=384, Pass2=3K a výsledné rychlosti pro 6 threads - 0.692 ms per bit.

Podobné parametry u Prime95 - tedy 6 jader na jednoho workera (instanci)
Timings for 1152K FFT length (6 cores, 1 worker): 0.70 ms. Throughput: 1426.73 iter/sec.
Pokud bych chtěl testovat na jedno jádro:
d:\temp\LLR>cllr64.exe -d -q"200749*2^11375778+1" -t1
Using all-complex FMA3 FFT length 1152K, Pass1=384, Pass2=3K, a = 3
200749*2^11375778+1, bit: 30000 / 11375795 [0.26%]. Time per bit: 3.601 ms.
A proti tomu Prime95 - 1 core, 1 worker.
Timings for 1152K all-complex FFT length (1 core, 1 worker): 3.75 ms. Throughput: 266.78 iter/sec.
Kromě matematiky zde musí fungovat i reálné vytížení jader. Kdo nevěří, ať tam běží - a tam je Taskmanager.


Jestli zde jde o 4-core CPU, tak nejrychlejší varianta bude 4 jádra, 1 worker a ne 4 jádra x 4 worker.
Honza1616 píše:no a moje pro změnu zase takto, tzn že pro následující turnaj bude zase jiné nastavení než bylo por llr321 přesněji budu počítat na 4 jádrech 1 jednotku bez HT
[Mar 28 12:21] Timing 1728K FFT, 4 cores, 1 worker. Average times: 2.43 ms. Total throughput: 411.04 iter/sec.
[Mar 28 12:21] Timing 1728K FFT, 4 cores, 4 workers. Average times: 10.98, 10.29, 10.61, 10.35 ms. Total throughput: 379.18 iter/sec.[Mar 28 12:22] Timing 1728K FFT, 4 cores hyperthreaded, 4 workers. Average times: 12.70, 10.19, 11.94, 10.17 ms. Total throughput: 358.95 iter/sec.
A u 10-core CPU vyjde dobře 1 worker na 10 jader (případně s HT), než 10 workerů a každý 10 jader - to by fakt chtělo 100 jádrový CPU.
i7 6950X vypadá takto:
Timings for 1152K FFT length (10 cores, 1 worker): 0.60 ms. Throughput: 1654.14 iter/sec.
Timings for 1152K FFT length (10 cores, 10 workers): 8.46, 8.58, 8.46, 8.45, 8.44, 8.50, 8.51, 8.43, 8.48, 8.46 ms. Throughput: 1179.71 iter/sec.
Timings for 1152K FFT length (10 cores hyperthreaded, 1 worker): 0.59 ms. Throughput: 1691.57 iter/sec.
Timings for 1152K FFT length (10 cores hyperthreaded, 10 workers): 9.43, 8.59, 8.94, 8.56, 9.12, 8.60, 9.49, 8.65, 8.82, 8.63 ms. Throughput: 1127.27 iter/sec.

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: čtv 29 bře, 2018 14:14
od Dzordzik
Zásadní je správné pochopení a interpretace výsledků, tj. pokud mám např. 10 jádrovž CPU a z testů mi vyplyne jako optimální 5 cores, 1 worker, znamená to, že je třeba počítat 5 threadů na jednu jednotku, tj. mohu pustit najednou 2 jednotky a každou bude počítat 5 threadů. Pokud to někdo pochopí jinak a špatně to nastaví, výsledky logicky půjdou do háje. Tohle platí hlavně u PC, kde je jeden procesor. Pokud jich je víc, vstupují tam do hry ještě další problémy.

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: čtv 29 bře, 2018 14:15
od LookAS
Honza píše:Jelikož jsem k Prime95 nedostal kloudné odpovědi ani na základní otázky typu "odpovídají tyto testy reálným výsledkům s LLR aplikací", kouknul jsem se tomu na zkoubek.
A co z toho vyvozuješ? Z mých meření se časy na iteraci liší v řádu procent (stejně jako tobě), ale důležité je, že to celkově všude vychází podobně - tzn jak dle prime95 tak dle llr aplikace vychází to samé nastavení CPU/WU

Honza píše: Jestli zde jde o 4-core CPU, tak nejrychlejší varianta bude 4 jádra, 1 worker a ne 4 jádra x 4 worker.
Honza1616 píše:no a moje pro změnu zase takto, tzn že pro následující turnaj bude zase jiné nastavení než bylo por llr321 přesněji budu počítat na 4 jádrech 1 jednotku bez HT
[Mar 28 12:21] Timing 1728K FFT, 4 cores, 1 worker. Average times: 2.43 ms. Total throughput: 411.04 iter/sec.
[Mar 28 12:21] Timing 1728K FFT, 4 cores, 4 workers. Average times: 10.98, 10.29, 10.61, 10.35 ms. Total throughput: 379.18 iter/sec.[Mar 28 12:22] Timing 1728K FFT, 4 cores hyperthreaded, 4 workers. Average times: 12.70, 10.19, 11.94, 10.17 ms. Total throughput: 358.95 iter/sec.
ano, vžyť to píše (jen špatně formulované) a vyznačil to červeně i ve výsledkách.
Honza píše: A u 10-core CPU vyjde dobře 1 worker na 10 jader (případně s HT), než 10 workerů a každý 10 jader - to by fakt chtělo 100 jádrový CPU.
i7 6950X vypadá takto:
Timings for 1152K FFT length (10 cores, 1 worker): 0.60 ms. Throughput: 1654.14 iter/sec.
Timings for 1152K FFT length (10 cores, 10 workers): 8.46, 8.58, 8.46, 8.45, 8.44, 8.50, 8.51, 8.43, 8.48, 8.46 ms. Throughput: 1179.71 iter/sec.
Timings for 1152K FFT length (10 cores hyperthreaded, 1 worker): 0.59 ms. Throughput: 1691.57 iter/sec.
Timings for 1152K FFT length (10 cores hyperthreaded, 10 workers): 9.43, 8.59, 8.94, 8.56, 9.12, 8.60, 9.49, 8.65, 8.82, 8.63 ms. Throughput: 1127.27 iter/sec.
ano, je to z výsledků jasně vidět.
btw jaký 100 jádrový cpu? formulace Timings for 1152K FFT length (10 cores, 10 workers) je zde myšlená tak, že na celkových 10 jader je spuštěno celkem 10 WU => 1WU na jádro.
stejně tak 4 cores, 4 workers znamená adekvátně to samé.

a co se ti nezdálo na vytížení z taskmanageru?

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: čtv 29 bře, 2018 14:47
od Honza
Mě se nezdá to, že by např. 6 threadů bylo o tolik rychlejší, než 6x1 thread.
Usuzoval jsem, že to spíše vypadá na 6x6threadů a zahlcení sběrnice.

Ale teď na to koukám, a fakt 33ooo
U LLR je zcela jasné, co se kolikrát počítá, u Prime95 musím věřit dobré/špatné interpretaci.

A také mi tam chybí varianty 2x3 threadů nebo 3x2 threadů a podobně, které si s LLR mohu pohodlně vyzkoušet.
Teď mi přijde docela možné, že u delších jednotek tyto scénáře není třeba - stačí zvolil jednu instanci a optimální počet threadů, ale u SGS je to dosti důležité.

To už se blížím k tématu dual-CPU sestav, které jsou k testování o poznání komplekovanější a prosté 1-n threadů nestačí, je třeba zkoušet i různý počet instancí a threadů.

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: čtv 29 bře, 2018 15:27
od LookAS
krapet bokem pro představu, na mersenne foru (prime95) psal autor, jak je vlastně FFT na pamětovou propustnost náročný. docela mě to číslo překvapilo.
prime95 píše:A 4M FFT needs ~135 MB of bandwidth per iteration.
sice se na PG pohybujeme v menších FFT, ale pro představu dobrý.

konkrétně u mě:
Timings for 4096K FFT length (12 cores, 1 worker): 2.03 ms. Throughput: 491.47 iter/sec.

491*135=66GB/s 33ooo
dual channel DDR4 3200MHz má teoretických 51,2GB/s, tripple channel 76,8GB/s a quad channel 102,4GB/s
Honza píše:A také mi tam chybí varianty 2x3 threadů nebo 3x2 threadů a podobně, které si s LLR mohu pohodlně vyzkoušet.
ano, benchmark je v tomto ohledu ošizen, ale v programu to nastavit pro samotné počítání mersenne jde.
stejně tak jde v konfiguračním souboru nastavit i třeba custom spřažení jader/vláken pro multisocket sestavy, aby si to prime95 přebral nezávisle na tom, co mu řekne systém, který to občas zvoře. Pak se to chová samozřejmě jinak, když se jedna jednotka počítá na stejném cpu.

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: čtv 29 bře, 2018 18:42
od Honza
LookAS píše:krapet bokem pro představu, na mersenne foru (prime95) psal autor, jak je vlastně FFT na pamětovou propustnost náročný. docela mě to číslo překvapilo.
To přesně odpovídá tomu výkonostnímu propadu u více threadů a že dual-channel je prostě pro 4 a víc jader málo, nedejbože u serverových/vícejádrových CPU.

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: čtv 29 bře, 2018 21:23
od Czech Human
Docela se těším na test CPU s propustností pamětí 170 GB/s 45cc

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: pát 30 bře, 2018 00:29
od LookAS
Dzordzik píše:Máš ponětí jak nastavit BOINC aby se jednotky počítaly na konkrétním CPU a ne jak se Win zachce? Uvažuju nad tím rozjet si 2 instance BOINCu a každé nastavit, pokud lze, aby jednotky počítala jen na konkrétním CPU (socketu). Máš v tomto nějakou zkušenost a dokázal bys konkrétně poradit jak to nastavit? Děkuju.
Bohužel, v BOINCu to neumím, ale nejspíš to asi ani nejde, nechává to vše na systému. Stejně tak, jak ti nerozpozná 2 stejné grafiky, tak ti asi ani nerozpozná multisocket CPUs. Vše to vidí tak nějak dohromady. Ale třeba se pletu a někdo mě vyvede z omylu.
Nevím jestli by to neumělo třeba Process Lasso.

edit:
nebo nějak pomocí powershellu a plánovače úloh, viz tenhle starej příspěvek v internetu. ale s powershellem si taky nerozumím, tak to nedokážu jednoduše upravit pro tvoji potřebu.

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: pát 30 bře, 2018 07:55
od forest
Grafika takto určit nastavit jde. Jde specifikovat device, tedy určit který projekt má počítat na kterém device (0,1,..). Jestli toto lze udělat s více CPU v jednom stroji netuším. O této možnosti jsme se bavili s Dzordzikem už během posledního PG turnaje, ale k průzkumu možností jsem se osobně dosud nedostal. Bylo by to skvělé, jelikož takto spousta jednotek běží nahodile na několika jádrech jednoho i druhého CPU a vše se tím hrozně brzdí. Mít možnost počítat na každém CPU určitý počet jednotek ve dvou samostatných BOINC Core, by bylo asi jediným možným řešením, jak toto ovlivnit.

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: pát 30 bře, 2018 09:03
od Honza
Vcera jsem Dzordzikovi rozběhal dva BOINC klienty.
Téma přiřazení affinity jednotlivým taskům je pro něj na dual CPU opravdu nosné, včera jsem to po etlefonu probírali - kvůli tomu co zmínil forest.

Díval jsem zběžně na ten PowerShell skript a to by mohlo fungovat, protože vypadá, že řeší procesy, které patří BOINC klientovy.
(nastavit afiinitu boinc.exe nic neřeší, protože ten nic nepočítá).
Možná by bylo dobré přejmenovat EXE pro druhou instanci BOINCu na boinc2.exe, ať se pozná, který je který.
Nebo se ve skriptu rovnou odkazovat na PID té které instanace, třeba spouštěcím parametrem.
Doporučuji vyzkoušet.

(přes víkend asi nebudu u kompu, tak se těším na výsledky)

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: pát 30 bře, 2018 10:55
od Dzordzik
To přejmenování jsem udělal už včera, ale zdá se že to nevede k výsledku, který jsem očekával. Bude to chtít ještě dlouhého bádání, protože nezáleží na tom že přiřadíš affinity BOINcu, musí se to udělat pro každý konkrétní proces projektu, ne BOINCu a ten je bohužel vždycky se stejným názvem a bez ohledu na to ze kteého BOINCu ho sopustíš. Takže to zatím vypadá jako slepá ulička. Trošku mě včera nakopl ten start s tím přiřazením k NUMA uzlu, uvidíme jestli to bude mít vliv, který očekávám nebo to zase bude další ze slepých cest. kdyby bylo tolik času na hovadiny kolik ho není ... To by se testovalo a hrálo.

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: pát 30 bře, 2018 11:34
od Honza
Dzordzik píše:To přejmenování jsem udělal už včera, ale zdá se že to nevede k výsledku, který jsem očekával. Bude to chtít ještě dlouhého bádání, protože nezáleží na tom že přiřadíš affinity BOINcu, musí se to udělat pro každý konkrétní proces projektu, ne BOINCu a ten je bohužel vždycky se stejným názvem a bez ohledu na to ze kteého BOINCu ho sopustíš. Takže to zatím vypadá jako slepá ulička.
U té druhé instance BOINCu přejmenul BOINC.EXE na BOINC2.exe, jak jsem psal a podle toho uprav spouštění .BAT souboru, který jsem včera ladil.

Ano, musí se dělat procesy, které BOINC spouští, ale právě o tom by měl být ten PowerShell skript, na který zde LookAS odkazoval.
Můžeš si vypsat ID obou boinc klientů a pak se na ně odkazovat v tom skriptu ručně.
> get-process "boinc"

Nebo to půjde nějak tímto způsobem - říct názvem nebo cestou souboru, o který ti jde.
>get-process "boinc" -FileVersionInfo | Where Filename -like "*boinc.exe"
>get-process "boinc" -FileVersionInfo | Where Filename -like "*boinc2.exe"

Ale tohle už je na někoho, kdo v PowerShellu trochu víc dělá.

Sorry, jestli jsme zase OT.

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: pát 30 bře, 2018 17:46
od v.svantner
v.svantner píše:Děkuji.

i7 6950X vypadá takto:

Timings for 1152K FFT length (10 cores, 1 worker): 0.60 ms. Throughput: 1654.14 iter/sec.
Timings for 1152K FFT length (10 cores, 2 workers): 1.13, 1.14 ms. Throughput: 1763.75 iter/sec.
Timings for 1152K FFT length (10 cores, 3 workers): 1.95, 1.94, 1.45 ms. Throughput: 1718.51 iter/sec.
Timings for 1152K FFT length (10 cores, 4 workers): 3.37, 3.35, 2.18, 2.18 ms. Throughput: 1511.01 iter/sec.
Timings for 1152K FFT length (10 cores, 5 workers): 3.84, 3.84, 3.84, 3.85, 3.83 ms. Throughput: 1301.62 iter/sec.
Timings for 1152K FFT length (10 cores, 10 workers): 8.46, 8.58, 8.46, 8.45, 8.44, 8.50, 8.51, 8.43, 8.48, 8.46 ms. Throughput: 1179.71 iter/sec.
Timings for 1152K FFT length (10 cores hyperthreaded, 1 worker): 0.59 ms. Throughput: 1691.57 iter/sec.
Timings for 1152K FFT length (10 cores hyperthreaded, 2 workers): 1.07, 1.07 ms. Throughput: 1868.01 iter/sec.
Timings for 1152K FFT length (10 cores hyperthreaded, 3 workers): 2.00, 1.98, 1.42 ms. Throughput: 1708.54 iter/sec.
Timings for 1152K FFT length (10 cores hyperthreaded, 4 workers): 3.55, 3.52, 2.25, 2.22 ms. Throughput: 1460.33 iter/sec.
Timings for 1152K FFT length (10 cores hyperthreaded, 5 workers): 4.01, 3.96, 3.96, 3.99, 3.96 ms. Throughput: 1258.14 iter/sec.
Timings for 1152K FFT length (10 cores hyperthreaded, 10 workers): 9.43, 8.59, 8.94, 8.56, 9.12, 8.60, 9.49, 8.65, 8.82, 8.63 ms. Throughput: 1127.27 iter/sec.

Na RT 1950X vypadlo toto:

FFTlen=1152K, Type=3, Arch=4, Pass1=128, Pass2=9216, clm=4 (16 cores, 1 worker): 1.46 ms. Throughput: 685.28 iter/sec.
FFTlen=1152K, Type=3, Arch=4, Pass1=128, Pass2=9216, clm=4 (16 cores, 4 workers): 2.50, 2.54, 2.56, 2.47 ms. Throughput: 1587.07 iter/sec.
FFTlen=1152K, Type=3, Arch=4, Pass1=128, Pass2=9216, clm=4 (16 cores, 16 workers): 12.21, 12.66, 12.49, 12.30, 12.18, 14.37, 11.90, 12.15, 12.91, 12.58, 12.43, 12.46, 12.49, 12.50, 12.66, 12.74 ms. Throughput: 1275.46 iter/sec.
FFTlen=1152K, Type=3, Arch=4, Pass1=128, Pass2=9216, clm=4 (16 cores hyperthreaded, 1 worker): 1.79 ms. Throughput: 558.18 iter/sec.
FFTlen=1152K, Type=3, Arch=4, Pass1=128, Pass2=9216, clm=4 (16 cores hyperthreaded, 4 workers): 2.61, 2.65, 2.53, 2.69 ms. Throughput: 1529.44 iter/sec.
FFTlen=1152K, Type=3, Arch=4, Pass1=128, Pass2=9216, clm=4 (16 cores hyperthreaded, 16 workers): 12.74, 12.54, 12.47, 12.24, 15.30, 12.72, 12.29, 11.95, 12.92, 12.64, 12.87, 12.75, 12.76, 12.87, 14.01, 12.71 ms. Throughput: 1247.99 iter/sec.
Zdravím.

Byl by někdo od té lásky a dobroty a napsal mi zde config pro intel a amd viz shora pro nadcházející turnaj? Slibuji, že příště si to už dám dohromady sám.

Děkuji.

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: pát 30 bře, 2018 19:48
od Dzordzik
Nezapomeň ještě poté co to vložíš do app configu pro oba stroje dát načíst konf. soubory v BM.

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: pát 30 bře, 2018 19:55
od v.svantner
Já po configu vždy resetuji.

Re: Challenge Series - turnaj na Primegridu 2018

Napsal: pát 30 bře, 2018 21:30
od boceli
dík, já jsem předtím zkoušel toto:

<app_config>
<app>
<name>llrESP</name>
<fraction_done_exact/>
<max_concurrent>1</max_concurrent>
</app>
<app_version>
<app_name>llrESP</app_name>
<cmdline>-t 2</cmdline>
<avg_ncpus>2</avg_ncpus>
</app_version>
</app_config>

a v manageru jsem měl nastaveno 100%, tak teď nevím jestli to vlastně nedělalo to samé :) ... už jsem se v tom nějak ztratil a to tak, že už mi není úplně jasné co nastavuje <cmdline>-t 2</cmdline> a co <avg_ncpus>2</avg_ncpus>

EDIT: mám více PC s různým HW, a teď jsem se v tom trochu zamotal (ale dotaz je stále k i3-6100 se zapnutým HT jak jsem se ptal výše)