Diit.cz - Novinky a informace o hardware, software a internetu

Diskuse k Nvidia Ampere uveden: Vše na oltář Tensor Cores

A pojede na tom Crysis?

+1
0
-1
Je komentář přínosný?

Na to jsou v tom systému od Nvidie ty Epycy + SW renderer, takže žádné GPU Nvidia nebude potřeba
https://m.youtube.com/watch?v=HuLsrr79-Pw

+1
0
-1
Je komentář přínosný?

To je furt samé Tensor cores, ale že by se člověk dočetl o tom kolik to má ALU to ne :D

20x násobné zvýšení výkonu AI při jen 2,5x násobném počtu tranzistorů dává zvýšení výkonu na tranzistor 8x. To znamená, že i kdyby to vyrobili jako Voltu na 12nm, tak by to bylo 8x rychlejší. To je vynikající zvýšení výkonu na tranzistor.

Jo a malá poznámka pro milovníky cache jakožto zvyšování výkonu: Ampere dosahuje vyšší výkon kvůli změnám v architektuře a přidáním výpočetních jednotek přičemž zvýšení cache je jenom nutné zlo aby systém nehladověl. Zkuste popřemýšlet o tom co je příčina a co následek. Ono to u CPU totiž není jinak :)

+1
0
-1
Je komentář přínosný?

Cache je potřeba. Do CPU se nedává jen tak pro srandu králíkům, protože zabírá dost křemíku. Je to podobné jako s RAM. Děláš v programu, který tvůj CPU zvládá málem i na iddle frekvencích, ale najednou mu vezmeš potřebnou RAM - výsledek je velké zpomalení.

+1
0
-1
Je komentář přínosný?

Přesně jak píšeš: cache pomáhá zabránit zpomalení CPU.

Z toho plyne že výkon nepřidává a pokud jí má jádro dostatek pro ten daný SW, tak její další zvyšování může naopak uškodit (horší latence velké cache).

+1
0
-1
Je komentář přínosný?

Ještě dodám, že to je jako s organizací lidí:
1) Když něco tvoříš (inženýr, dělník, ALU/LSU/FPU) tak je to primární proces
2) Když těm co tvoří primár děláš podporu/servis (typicky úředník, decode/prefetch/cache) tak je to sekundární proces

Pokud se sekundár přemnoží a začne poroučet primáru, tak je to špatně jako když Sculley vyhodil Jobse a málem celý Apple přivedl do krachu. Stejně je to i se státy, pokud úředníci ze sekundáru začnou vnucovat svoje nesmysly lidem kteří něco opravdu tvoří a vyznají se v tom, tak potom dokážeme poměrně dobře vysvětlit neschopnost EU nebo ekonomický kolaps totalitních zřízení.

CPU je jako stavba baráku. Potřebuješ 10 zedníků a jenom nezbytný počet manažerů co to bude řídit. Stejné je to i u CPU, potřebuješ hafo výpočetních jednotek a jenom nezbytný počet sekundárních věcích (cache, prefetch, decode) co je bude řídit a krmit. Zvyšování výkonu na sekundárních věcech nefunguje, viz. Bulldozer. Stejně jako 10 manažerů z jednoho zedníka taky 10x větší výkon nevymáčkne. :D

+1
0
-1
Je komentář přínosný?

Mas velmi skreslenu a zjednodusenu predstavu o fungovani komplexnych CPU/GPU obecne. A hoc ti to uz povedalo niekolko ludi, stale sa tu dokazes denne strapnovat bez stipky hanby..

+1
0
-1
Je komentář přínosný?

Cashe je něco jako turbo u motoru. Není to jednotka, ve které ten výkon je realizovaný, ale bez ní je ten výkon menší.

+1
0
-1
Je komentář přínosný?

Cache není turbo. Dělal jsem ve vývoji motorů a řeknu ti, že pokud chceš cache k něčemu v motoru přirovnat, tak by to bylo sací a výfukové potrubí. Když je příliš malé tak to škrtí výkon a když je moc velké tak to nic navíc nepřináší, protože limitem je samotný motor (otáčky a objemová účinnost). Když výrobce šetří a rozhodne se osadit výfukový systém třeba levnějším a menším katalyzátorem (menší průtočná plocha pak způsobuje velký dP a back pressure), tak to odnese motor horším max výkonem.

Turbo přímo zvyšuje hrubý výkon, jako přidání zdvihového objemu, ekvivalent ze 4-válce na 6-ti válec (analogie 4xALU na 6xALU).

Proto mám rád turbo 6xALU A13. Ty pomalá Intel a AMD 4xALU šroty si můžou zvětšovat cache jak chtějí a pomůže jim to asi jako když tuzer u Golfa vymění koncovku výfuku a kuchne kat. Na sériový Dodge Challenger Hellcat Redeye widebody 6,2L V8 s kompresorem a jeho 797 koňma se pořád bude smutně z dálky koukat :D

https://www.youtube.com/watch?v=xgHIvDHqUDA&t=2s

+1
-1
-1
Je komentář přínosný?

To prirovnani ALU k valcum u auta je nesmysl. Tam vicemene plati, ze cim vic valcu, tim lip a taky jsou to hlavni, co dela vykon. ALU u modernich CPU jsou co se tyce plochy pouze velmi minoritni zalezitost (lze dohledat napr. anotovane schema Skylake-SP, kde odhadem ALU mozna nemaji ani 1 % plochy) a navic nejdou "scitat". Jeden x86 thread je schopny vyuzit tak 2-3 ALU a to jeste jen nekdy. Navic, ALU jsou jen jeden typ vykonnych jednotek - dalsi jsou AGU, shiftery, shufflery, delicky atp. a to vubec nepocitam FP a vektorove jednotky, ktere delaji skutecny vykon a zabiraji mnohem vic mista. Tam by to srovnani s valci davalo smysl - pocet valcu = sirka vektoru. Obecne, ALU instrukce jsou v x86/x64 kodu pomerne ridke a na sobe zavisle, takze nejdou paralelizovat. Zivim se psanim kodu v assembleru a nepamatuju pripad, ze bych byl nekdy limitovan poctem ALU. 4 je vetsinou zbytecne moc. Limit byva jinde. 6 ALU je mozne jedine se zvysenim poctu threadu/jadro. Pokud to shrnu, je mi celkem fuk, kolik ma muj CPU ALUs, protoze me zajimaji uplne jine veci, pro vykon mnohem dulezitejsi.

+1
+3
-1
Je komentář přínosný?

Richie Rich ale tohle nechape, to jsou pro nej veci slozitejsi, nez zavazani tkanicek u bot, proto to nedava.

Mozna bych rozporoval ty 2-3 ALU. Zaridit, aby vlakno dokazalo mit v jednu chvili vice nez jeden vypocet je silene (oproti tomu zaridit ze jeden proces ma 2..n vlakna na sobe nezavisla a tedy samostatne vyuzivajici exekucni jednotky uz neni tak velky problem). Ale zatimco konkretni vypocet toho vlakna okupuje jednu ALU, tak uz se muze resit napr. na AGU adresa pro dalsi instrukci toho vlakna.

+1
0
-1
Je komentář přínosný?

"Zaridit, aby vlakno dokazalo mit v jednu chvili vice nez jeden vypocet je silene"

Jak se to vezme. Třeba pokud do toho zahrnete software pipelining, tak taková věc se dělá docela běžně.

+1
0
-1
Je komentář přínosný?

Nooo.... :D

Bezne... nerekl bych, ze je bezne (a v dnesni dobe uz vubec ne) aby se nekdo hrabal v assembleru a kdyz se to necha na compileru, tak to produkuje ne uplne skvele vysledky.

Mozna jsem se spatne vyjadril. Jsem si jisty, ze porad jeste programuji lide, kteri to zvladnou napsat, nebo vedi proc a jak to zapinat behem optimalizaci kompileru. Ale naprosto desive silena vetsina kodu dneska rozhodne takhle optimalizovana nebude.

+1
0
-1
Je komentář přínosný?

Určitě to produkuje lepší výsledky, když to udělá kompilátor, než když to neudělá nikdo. ;)

+1
0
-1
Je komentář přínosný?

A co říkáte na to, že sám Keller zmínil u Ice Lake paralelní zpracování 6-8 instrukcí? Nechce mi tu doufám nikdo tvrdit, že šéf architekt CPU, který se tím zabývá celý život, neví o čem mluví, že ne? :D

Hlavně stačí když se člověk podívá na výsledky K8, která má 1/3 IPC Zen2. To by totiž znamenalo že K8 uměla vytížit jádro méně než 1 instrukci na takt. Proč by tam potom dávali 3xALU a 3xAGU? Vy jste fakt komici :D

+1
0
-1
Je komentář přínosný?

Jsou ruzne instrukce, a jsou ruzne exekucni jednotky.

Uz Skylake ma 8 portu na kterych ma navesene ALU, AGU, FMA, LEA,...

A to je to, co jsem ti vysvetloval uz davno. Neni instrukce jako instrukce a 6xALU nic neznamena. Takze kdyz Keller rika paralelni zpracovani 6-8 instrukci, je to uplne v pohode.

Ne, to nic takoveho neznamenalo. Co ja videl, tak K8 mela prumerne IPC 2,2. Proto inzenyri v AMD udelali Bulldozer, ktery na Modul (coz byl SMT koncept od AMD, ale vzasade ekvivalent jadra u Intelu) mel 2x2ALU, 2x2AGU, 1x FMA. Spravne predpokladali, ze takove navyseni bude stacit. Co ale neudelali spravne byly prvky PRED exekucnima jednotkama a to dekodovani, predpovidani a rozdelovani instrukci bylo pomalejsi a melo vyrazne vetsi penalizace nez na Haswellu. A proto Bulldozer nestacil.

+1
0
-1
Je komentář přínosný?

Vidíš co píšeš za protiklady?

1) Víme že Ice Lake umí ze současného SW extrahovat 6-8 instrukcí pro paralelní zpracování. (s tím že dnes víme že Apple z toho umí dostat ještě dalších 60% navíc, tedy cca 10-13 instrukcí, a to nemluvím o tom že vývoj jde dál a ani tohle nejsou konečná čísla, takže výhledově tam leží 15-20).

2) A ty tu budeš tvrdit, že Bulldozer s jeho 2xALU, 2xAGu, 1xFMA (což je dohromady max 5 instrukcí) byl správně dimenzovaný CPU? Nebyl, byl brutálně poddimenzovaný. Proč myslíš že Zen toto musel napravit svými 4xALU, 2xAGU, 4xFPU? To je totiž dvakrát vic a celkem max 10 instrukcí.

3) Nesváděj to na front end, který byl sdílen dvěma jádry. Při jednovláknové zátěži totiž to jedno BD jádro mělo celý front end pro sebe a stejně bylo o dost pomalejší než 3xALU K10. Nemluvě o 4xALU Haswellovi, ten drtil BD dvojnásobným rozdílem.

BD byl hrozný fail ve všech ohledech. Ta pitomá P4 alespoň měla ty frekvence a dokázala soupeřit v ST výkonu s K8. BD byl průser ve všech ohledech.

+1
-1
-1
Je komentář přínosný?

> 2) A ty tu budeš tvrdit, že Bulldozer s jeho 2xALU, 2xAGu, 1xFMA (což je dohromady max 5 instrukcí)

To není nutně "maximálně pět instrukcí", protože např. některé časté instrukce jako přesuny mezi registry mohou být zcela eliminovány v rámci přejmenovávání fyzických registrů.

+1
0
-1
Je komentář přínosný?

1) nejsem si jisty, ze vis, jak to skutecne funguje :D

2) Ano, tehda, pred 15 lety kdy zacinal vyvoj Bulldozeru si inzenyri v AMD spocitali, ze to bude stacit a kdyby to neposrali jinde, tak by to stacilo.

To s tim Zenem, to si me hodne rozesmal. Opravdu si tak stupidni? Zen je uplne prepracovany koncept a ma na Bulldozer 10 let pokroku. To je jako kdyby ses divil, ze drive stacilo 640kb pameti a dneska mame vice.

Tech 9 instrukci bylo na modul (rikal jsem, ze modul mel 2x2ALU, ale pri tve inteligenci asi neumis dobre vstrebavat psany text) a to byl ekvivalent jadra. Haswell, ktery prisel 2 roky po Bulldozeru zvysil ALU na 4 a AGU na 3. Takze na papire mel modul Bulldozeru stale lepsi zdroje, nez jadro Haswellu. A BD mel 4 moduly, stejne jako Haswell jader. A ze modul byl SMT koncept AMD bylo i predmetem zaloby, kdy AMD to nakonec take priznalo (predtim se chlubili tim, ze maji 8 mikrojaderek - 2 na kazdy modul)

3) Nesvadim to. Jsou to overene informace. Zaprve Windows scheduler nedokazal vstrebat koncept modulu. Takze obsazoval prvne cele moduly. Toz znamenalo, ze i pri "jednovlaknove" zatezi (tady mimochodem ukazujes sve neuveritelne mezery v znalostech) byl vytizen cely modul. Na kazde pulce toho modulu (to co se marketingove oznacovalo jako jadro) bezelo vzdy neco, takze se porad pralo o zdroje FE. Zadruhe Bulldozer byl navrzen na vetsi frekvence, mel delsi pipeline 20cyklu oproti 12 u K8, pritom na tak vysokych frekvencich z prvu nebezel. A az v Piledriveru zapracovali na lepsi predpovidaci logice. BD mel hrozne penalizace pri spatne predpovedi vetveni. Zasobniky na mikroinstrukce take nebyly dostatecne velke.

BD byl fail, netvrdim ze ne. Hlavne v tom "jednojadrovem" vykonu, kdy byl na urovni K8, nekde i lehce pod nim. A pletes si duvody a nasledky. BD byl pruser, ale ne ve vsech ohledech. A duvod proc to byl pruser jsem ti psal. AMD inzenyri udelali v prvni iteraci uplne noveho konceptu (ani ne arch, ale celeho konceptu) nekolik chyb. Ale pocet ALU to nebyl ;)

+1
+4
-1
Je komentář přínosný?

Tak bavíme se tady celou dobu o tom, kolik instrukcí lze zpracovávat paralelně z JEDNOHO vlákna a ty začneš obhajovat BD tím, že umí 9 instrukcí ve DVOU vláknech :D

1) Tobě nedochází, že ta sdílená FPU způsobovala právě pokles na 4,5 instrukce a tedy BD byl výrazně pomalejší v MT loadu. To sis moc nepomohl v obhajobě BD což?

2) Pokud by BD dokázal zpracovat jedno vlákno za pomocí obou jader v modulu, tak by jeho výkon nebyl tak tragický a jeho tvůrci by dostali Nobelovku, protože se to zatím nikomu nepovedlo.

Chlapče chapče

+1
-4
-1
Je komentář přínosný?

ty uzvas drogy alebo ta otec/stryko/sused pohlavne zneuziva/zneuzil? Kde tam obhajuje buldozer? Ako neviem ako hlupejsie ti ma vysvetlit ze ALU je sice dolezite ale ani nahodou nie tak podstatne ako to opisujes.

+1
+3
-1
Je komentář přínosný?

Co na to říkám? Asi to, že to nemá souvislost s tím, co jsem psal, takže jste si asi spletl komentář, na který odpovídáte?

+1
0
-1
Je komentář přínosný?

A ted mi rekni, proc by se do toho nekdo poustel kdyz to:

A) neni uplne trivialni, tim padem to stoji zdroje lidske (mentalni)
B) prodluzuje to vyvoj, tim padem stoji dalsi zdroje (cas)
C) je to technika na optimalizovani SMYCEK!!!

Kod plny smycek se casto neobjevuje. Takze se bavime o technice, ktera dokaze vyzdimat naky vykon (to zavisi na arch) v 2% kodu a stoji zbytecne penize.

+1
0
-1
Je komentář přínosný?

Spustit kompilátor vás stojí mentální zdroje? To jsem netušil.

Nechápu navíc, proč jste tak vysazený na smyčky. Plánovat vhodným způsobem nezávislé instrukce v dnešní době můžete, resp. musíte ve všech případech. Tohle byl jen jeden příklad relevantní situace, která je tím známá natolik, že ji speciálně pojmenovali, tak jsem ji zmínil jako příklad, protože se na ni dá pohodlně odkázat jménem.

+1
0
-1
Je komentář přínosný?

Bavili jsme se o software pipelining a to je metoda pro smycky. Zminil jste ji proto, ze je jedna z mala relativne jednoducha. Nahodte jine a budeme se bavit.

A ano, kdybyste delal neco vice nez hello world, pravdepodobne byste mel CI/CD nastavenou nejak (a kolikrat nekym mimo tym) a nehrabal byste do ni, pac to stoji mentalni zdroje a vysledek neprinasi temer zadny.

Delat software tak, ze MUSITE resit nezavisle instrukce? :D Zajimalo by me kde. V dnesni dobe takhle temer nikdo nedela. Stoji to moc mentalnich zdroju.

+1
0
-1
Je komentář přínosný?

Předem upozorňuji, že o CPU architektuře nevím zhola nic a o programování ještě méně, ale i jako naprostému laikovi mi hlavou vrtá jedna věc. Často se tvrdí, jak se počet ALU a FPU v CPU dá obtížně využít a pokud jich je tak kolem 4, další navyšování je prakticky zbytečné. Ale co třeba kdybych počítal například PI pomocí nekonečné řady? To je prakticky neomezený počet na sobě nezávislých výpočtů, kreré by teoreticky mohly využít libovolný počet ALU a FPU jednotek, pokud by byly dostatečně zásobeny daty. Zdá se mi podivné, že by podobné výpočty byly ve světě software tak raritní, aby se zvyšování výpočetních jednotek prakticky neprojevilo na celkovém výkonu.

+1
0
-1
Je komentář přínosný?

Výpočty, které by profitovaly z většího počtu ALU se v klientském a serverovém kódu moc často nevyskytují. Důvodů pro to je několik
1. masově rozšířených výpočetně náročných algoritmů je jenom pár - šifrování, kódování videa - pro ty mají procesory speciální akcelerační instrukce a obvody.
2. Pokud je výpočet snadno vektorizovatelný, je lepší využít GPU

Jediná oblast, která by využila navýšení počtu ALU jsou vědecké výpočty, např. zmíněný výpočet PI na miliardu desetinných míst. Ale obávám se, že pro investory AMD a Intelu není výpočet matematických specialit dostatečným argumentem pro navýšení počtu ALU.

+1
0
-1
Je komentář přínosný?

Laik má pravdu, že tady něco smrdí. Sám Jim Keller na tom známém videu na YT řekl, že současné Intel CPU zpracovávají v průměru 6-8 instrukcí za takt. Pokud si mám vybrat zda věřit šéf architektovi Zenu, který to dotáhl z technika na vice-prezidenta v Intelu, nebo místním rádoby-odborníkům kteří neumí navrhnout ani boudu pro psa ..... hádejte komu věřím víc :)

Hlavně tu máme změřené benchmarky 6xALU Apple jader A13, které ukazují o 84% vyšší IPC/PPC než Zen2. Takže řeči o nevyužití ALU jednotek jsou úplně mimo mísu. Naopak to ukazuje, že se Apple brzy posune na 8xALU a bude běžně dosahovat více jak dvojnásobného IPC/PPC než Zen2. Nějakou podobnou konfiguraci očekávám od Nuvie, 8xALU + SMT4 bude mít jak vysoký ST výkon, tak i obrovskou univerzálnost díky inteligentnímu řízení SMT4.

Jinými slovy jestli Zen3 bude mít opravdu jen 17% nárůst IPC, tak bude mít AMD velký problém s existencí.

+1
-2
-1
Je komentář přínosný?

.

+1
0
-1
Je komentář přínosný?

Noze nam daj linkt na produkty s AppleA13 nech tiez potestujeme. Ak nie su tak si len kecalek. Inak to IPC je tvoja jedina modla a indikator? Takze ked to bude mat 100Mhz ale 10000000 IPC a pojdu na tom 3 aplikacie resp. velmi mala dostupnost (len apple) tak podla teba je to lepsie ako 4Ghz a IPC 3000000 ano? Nehovoriac o tom ze to nie je na trhu dostupne.

+1
0
-1
Je komentář přínosný?

Mas specializovane akceleratory, ktere resi velmi omezene pripady ktere popisujes.

Pro obecne vypocty, a CPU JE pro obecne pouziti takovy pripad jako si rekl ty neplati.

Zaprve, IPC je "Instructions per clock". Uz z definice je jasne, ze je to konkretni cislo. Recenzenti to ale radi zneuzivaji (casto tomu vubec nerozumi) a pouzivaji procenta. O kolik procent se IPC zvysilo. A navic to zobecnuji pres spousty aplikaci, zatimco IPC neni porad to same ani v ramci jednoho programu.

Napr. mas program, ktery v pulce iteruje pres nejake hodnoty. V tom pripade ma IPC jine, nez kdyz o nekolik (set?) radku kodu volal funkce OS (napr. I/O operace) aby nacetl nejake hodnoty.

Proto v kazdem jadre modernich CPU je nekolik EXEKUCNICH jednotek. Jsou tam jednotky, ktere dokazi zpracovavat instrukce vypocitavajici pametove adresy, jsou tam jednotky ktere jsou specialne navrzene tak aby vykonavali co nejrychleji skoky, jsou tam jednotky ktere resi ciste celociselne operace, jsou tam jednotky, ktere resi vypocty s pohyblivym radem.

V kazdem procesoru je nejaky typ planovace a zasobniku instrukci (uz dekodovanych) pro tyto exekucni jednotky. A ten ma nekolik portu, na ktere jsou ty jednotky navesene. Je bezne, ze zatimco cast jadra pocita jednu instrukci (napr. kolik je 5+6) jina cast jadra pocita uz instrukci na vypocet adresy, kam se pak vysledek zapise.

A tedka si vem, ze do vypoctu IPC nevstupuje jen ten jeden program. Je naprosto bezne, ze OS ma stovky bezicich programu/vlaken. Sluzby ktere se ke slovu dostanou treba jen jednou za 3 vteriny. Nektere sluzby a casti OS bezi ale prakticky porad, jine treba kazdych 20ms.

CPU je jedno ktere vlakno v tuhle schvili zpracovava. Planovac OS mu rekne, ze tedka je dulezite (protoze bezi na popredi v uzivatelskem prostredi) program PI a ten chce spocitat dalsi desetinne misto, aby pocital instrukce toho programu PI. Ale jednou zacas mu rekne aby misto toho resil instrukce sluzby, ktere kontroluje teplotu grafiky, protoze v bezi na pozadi ovladac grafiky, ktery s tim pracuje.

Je prakticky nemozne zaridit, aby bezel jeden jediny program na jednom jedinem jadru. Uzivatel by musel delat psi kusy, nastavovat afinity atp. aby tohle udelal.

Proste celkove vzato, pres jadro CPU tece takovy hrozny mix instrukci, ze zvysovani jednech konkretnich jednotek (jako napr. ALU), je moc draha zalezitost. Draha ve smyslu toho, ze kdyz uz je pridas, musis zajistit, aby byly spravne vyuzivane. Coz znamena, ze musis mit dost dobry prehled o Operacnim systemu ktery na tom CPU pobezi, musis vedet dobre jake aplikace na tom bezi nejcasteji a jake instrukce maji, musis pripravit hromady dalsich obvodu toho CPU na tuhle situaci, nesmi tam byt hluche misto, napr. ze by se takove instrukce pomalu nacitali, nebo dekodovali (protoze pak bys mel 6xALU, ale vytezoval bys bezne jen 3).

Apple si muze dovolit udelat 6xALU proto, ze ma cely ekosystem pod palcem. Dela OS, ma prekladac, obchod aplikaci, ovladace, atp. Ale to neni znamka lepsiho navrhu. To je znamka toho, ze nejses blby a kdyz mas vse pod kontrolou, dokazes udelat navrh na miru.

AMD a Intel se ale musi vyporadat s tim, ze na jejich CPU bezi mrte OS, a kvatna aplikaci. A rozdili v nich jsou desive. Stejne mikroarchitektura obsluhuje jak kancelarske stroje, tak i vypocetni monstra resici kolize cernych der.

Neni to jednoducha rovnice, proto k tomu nemuzes pristupovat trojclenkou. Neco co lidi jako Richie Rich nechapou :D Nenech si od nej nakukat hovadiny, ze APPLE je na vrcholu vyvoje protoze on udelal CPU s 6x ALU jednotkama :D

+1
+4
-1
Je komentář přínosný?

Co to tady zkoušíš za kraviny? Jak chceš prosím tě přistupovat v assembleru přímo k ALU jednotkám, když každý CPU má jiný počet ALU jednotek a na nich úplně jinou funkčnost?

ISA jakožto abstrakční layer/interface ti nedovoluje přímý přístup k back endu. A pokud se bavíme o x86, kde máš navíc díky převodu CISC -> RISC ty vrstvy dvě.... no prostě je to principielní nesmysl.

+1
0
-1
Je komentář přínosný?

Mas specializovane akceleratory, ktere resi velmi omezene pripady ktere popisujes.

Pro obecne vypocty, a CPU JE pro obecne pouziti takovy pripad jako si rekl ty neplati.

Zaprve, IPC je "Instructions per clock". Uz z definice je jasne, ze je to konkretni cislo. Recenzenti to ale radi zneuzivaji (casto tomu vubec nerozumi) a pouzivaji procenta. O kolik procent se IPC zvysilo. A navic to zobecnuji pres spousty aplikaci, zatimco IPC neni porad to same ani v ramci jednoho programu.

Napr. mas program, ktery v pulce iteruje pres nejake hodnoty. V tom pripade ma IPC jine, nez kdyz o nekolik (set?) radku kodu volal funkce OS (napr. I/O operace) aby nacetl nejake hodnoty.

Proto v kazdem jadre modernich CPU je nekolik EXEKUCNICH jednotek. Jsou tam jednotky, ktere dokazi zpracovavat instrukce vypocitavajici pametove adresy, jsou tam jednotky ktere jsou specialne navrzene tak aby vykonavali co nejrychleji skoky, jsou tam jednotky ktere resi ciste celociselne operace, jsou tam jednotky, ktere resi vypocty s pohyblivym radem.

V kazdem procesoru je nejaky typ planovace a zasobniku instrukci (uz dekodovanych) pro tyto exekucni jednotky. A ten ma nekolik portu, na ktere jsou ty jednotky navesene. Je bezne, ze zatimco cast jadra pocita jednu instrukci (napr. kolik je 5+6) jina cast jadra pocita uz instrukci na vypocet adresy, kam se pak vysledek zapise.

A tedka si vem, ze do vypoctu IPC nevstupuje jen ten jeden program. Je naprosto bezne, ze OS ma stovky bezicich programu/vlaken. Sluzby ktere se ke slovu dostanou treba jen jednou za 3 vteriny. Nektere sluzby a casti OS bezi ale prakticky porad, jine treba kazdych 20ms.

CPU je jedno ktere vlakno v tuhle schvili zpracovava. Planovac OS mu rekne, ze tedka je dulezite (protoze bezi na popredi v uzivatelskem prostredi) program PI a ten chce spocitat dalsi desetinne misto, aby pocital instrukce toho programu PI. Ale jednou zacas mu rekne aby misto toho resil instrukce sluzby, ktere kontroluje teplotu grafiky, protoze v bezi na pozadi ovladac grafiky, ktery s tim pracuje.

Je prakticky nemozne zaridit, aby bezel jeden jediny program na jednom jedinem jadru. Uzivatel by musel delat psi kusy, nastavovat afinity atp. aby tohle udelal.

Proste celkove vzato, pres jadro CPU tece takovy hrozny mix instrukci, ze zvysovani jednech konkretnich jednotek (jako napr. ALU), je moc draha zalezitost. Draha ve smyslu toho, ze kdyz uz je pridas, musis zajistit, aby byly spravne vyuzivane. Coz znamena, ze musis mit dost dobry prehled o Operacnim systemu ktery na tom CPU pobezi, musis vedet dobre jake aplikace na tom bezi nejcasteji a jake instrukce maji, musis pripravit hromady dalsich obvodu toho CPU na tuhle situaci, nesmi tam byt hluche misto, napr. ze by se takove instrukce pomalu nacitali, nebo dekodovali (protoze pak bys mel 6xALU, ale vytezoval bys bezne jen 3).

Apple si muze dovolit udelat 6xALU proto, ze ma cely ekosystem pod palcem. Dela OS, ma prekladac, obchod aplikaci, ovladace, atp. Ale to neni znamka lepsiho navrhu. To je znamka toho, ze nejses blby a kdyz mas vse pod kontrolou, dokazes udelat navrh na miru.

AMD a Intel se ale musi vyporadat s tim, ze na jejich CPU bezi mrte OS, a kvatna aplikaci. A rozdili v nich jsou desive. Stejne mikroarchitektura obsluhuje jak kancelarske stroje, tak i vypocetni monstra resici kolize cernych der.

Neni to jednoducha rovnice, proto k tomu nemuzes pristupovat trojclenkou. Neco co lidi jako Richie Rich nechapou :D Nenech si od nej nakukat hovadiny, ze APPLE je na vrcholu vyvoje protoze on udelal CPU s 6x ALU jednotkama :D

+1
0
-1
Je komentář přínosný?

Bwahahahaha, zase se ukazuje tvoje omezenost.

20x nasobne zvyseni nic neznamena, zvlast kdyz to 2.5 nasobne zvyseni tranzistoru neni pro obvody co resi AI.

2.5 nasobne zvyseni poctu tranzistoru je pro cely cip. Jednoducha matematika:

Kdyz mas 100 tranzistoru celkem, a 2 z toho jsou pro AI, zvysis pocet tranzistoru celkove na 250, ale pocet tranzistoru ktere jsou pro AI z 2 na 100 (dejme tomu ze zbytek jsou jen nake blbustky), tak to uz nevypada tak dobre, co? :D 50nasobne zvyseni tranzistor rozpoctu pro AI a jen 20x zvyseni vykonu? Pffff!

+1
0
-1
Je komentář přínosný?

Lepší otázka je jestli se to bude dát koupit nebo výjde líp starší auto ;D

+1
0
-1
Je komentář přínosný?

Ta volba Epyc 7742 je snad jasna... vsechno na MAX - je to nejvyssi cpu z dane rady pred nedavnym uvedenim tech par 7H/7F modelu.

Byl bych zvedavej, zda tech 8 karet se opravdu krmi skrze 8x Gen4x16 portu (128 linek, ktere nabizi 2S EPYC reseni), nebo je tam jen jeden vstupni bod a dal se to rozlejva pres NVLink.

Na stranu AMD hraje urcitou roli i dvojnasobny pocet pametovych kanalu oproti Intelu.

+1
+5
-1
Je komentář přínosný?

Já si myslím, že hlavním důvodem volby Epyců je jejich konektivita. Prostě takovou BANDWIDTH vám žádná jiná platforma nenabídne ;)

+1
+2
-1
Je komentář přínosný?

Ampere DGX Servers Pack A Wallop, Including AMD Epyc CPUs
May 14, 2020
Such is the case with the “Ampere” GA100 datacenter GPU that Nvidia launched today.

AMD won the CPU deal, according to Charlie Boyle, vice president and general manager of the DGX systems business, for two reasons: The PCI-Express 4.0 support and the high core count of 128 cores. Intel’s latest “Cascade Lake-R” Xeon SP processors top out at 28 cores and only support PCI-Express 3.0, which is not really enough to drive 200 Gb/sec InfiniBand ports in the numbers that the DGX A100 system has.

https://www.nextplatform.com/2020/05/14/ampere-dgx-servers-pack-a-wallop...

+1
+7
-1
Je komentář přínosný?

Proste Intel je v prdeli.

+1
+1
-1
Je komentář přínosný?

Nachápu proč nVidia použila trapnej Epyc a nikoliv ARM křemík s 6x ALU. Ideálně A13

+1
+12
-1
Je komentář přínosný?

Z tohohle mozna bude druhe "Ja bych ty internety zakazala." :D

+1
+1
-1
Je komentář přínosný?

ne že možná bude, už je. :o)

+1
+2
-1
Je komentář přínosný?

A13 nemá multiprocesorovú podporu ani 128 jadier 256 threadov a nemá PCI Express 4.0 a to sú dôvody výberu Epyc-u viď vyššiu. Ono ide o paralelnú mašinu

+1
0
-1
Je komentář přínosný?

128 jader, 256 vláken. PCIe4 a takový pitominy jsou nedůležitý, když má 6xALU :-)

+1
+6
-1
Je komentář přínosný?

Ale 128 jadier má 512 x ALU :)

+1
+1
-1
Je komentář přínosný?

Protože to jsou diletanti. Ale kdyby zaměstnali toho pána, jež je přesvědčen o potřebách 6 ALU a vůbec, kvalitách A13, nebo rovnou Crhu, takovej produkt by neměl konkurenci! :D

+1
+4
-1
Je komentář přínosný?

Proste, no!

+1
0
-1
Je komentář přínosný?

"V tomto kontextu stojí za zmínku, že podle dostupných informací je jádro Ampere GA100 vyrobeno na první generaci 7nm procesu TSMC"
Huang v představení zmínil, že A100 je vyrobená na 7nm TSMC optimalizovaném pro Nvidii viz https://www.youtube.com/watch?v=onbnb_D1wC8&feature=youtu.be&list=PLZHnY...

+1
-1
-1
Je komentář přínosný?

každý proces je do jisté míry optimalizovaný k návrhu zákazníka. Já osobně dost pochybuju, že by TSMC kvůli pár stovkám waferů pro nVidii optimalizoval proces ve vyšší míře, než jen papírové. Mimochodem Huang už ve své funkci nakecal tolik píčovin...

+1
+7
-1
Je komentář přínosný?

To v marketingovej reči (reklamštine) znamená, že: "zobrali sme to čo ostalo volné, po lojálnych zákazníkoch a jemne doladili na čo najvyššiu densitu (hustotu), aby sa nám do tej plochy, cca 800mm2, ten výpočtový Ampér zmestil a dal sa vôbec vyrobiť".

Verím, že napriek skvelému menu aké nVidia vo svete GPU má, si to vyjadreniami Huanga, nVidia u TSMC dosť posr...naštrbila dôveru... a TSMC radšej vsadilo priority na zákazníka, ktorý má maximálne predpoklady rásť najbližších 5 rokov (AMD), čo do objemu výroby, tak aj čo do portfólia produktov a to sa hlavne odrazí na 5nm procese (7nm+ tiež nieje výnimkou), ktorý pre AMD bude údajne zákazkový na mieru.

+1
0
-1
Je komentář přínosný?

Tento systém asi bude potrebovať na poschodovú montáž do skrine nejako špeciálne zosilnené regály v rackoch, predsa len 123kg asi bežný tenký oceľový profil neudrží... ;)

+1
0
-1
Je komentář přínosný?

Mrkni na videa - myslim v Ostrave maj DGX1 a ve videu vysvetluji jak se to montuje, jestli si dobre pamatuji tak pocitac prijde s obsluznym vozikem :)

+1
-1
-1
Je komentář přínosný?

me ta vaha neprijde nejak extra velka, DGX A100 je 6U server
kdyz to srovnam s HPE synergy 12000 framem tak to je 10U a na stitku to ma napsanejch 248kg

+1
-1
-1
Je komentář přínosný?

nemohla zvolit nvidia tenhle proces kvůli lepší výtěžnosti oproti ostatním 7nm?

+1
+1
-1
Je komentář přínosný?

Počítám že to bude výtěžnost, ty čipy jsou obrovské, stejně tak je pochopitelné že čip je sice designovaný na více ale do karet jde ořezaný, při tak velkém čipu ta chybovost asi nějaká bude.. tak se při návrhu počítá s tím že se to vždy ořeže, což může eliminovat velkou část zmetků

+1
+1
-1
Je komentář přínosný?

Při těhle mega GPU, ať už herních nebo profesionálních, si říkám, jaké je to plýtvání, že už nepřešly na vyměnitelnost pomocí socketů jako CPU. Vyšší cena „motherboardu" by se zákazníkům vyplatila, odlišné VRAM by taky šlo řešit a místo pro větší kartu není problém. V době, kdy grafika stojí i víc jak polovinu ceny celého PC, je to spotřební uvažování.

+1
-2
-1
Je komentář přínosný?

Ono na té kartě už je v podstatě jen napájení :) HBM je "na čipu"...

+1
-1
-1
Je komentář přínosný?

Tohle nejsou spotřební grafiky ale nástroje pro generování zisku nebo výzkum, kde náklady na hardware v celkovém objemu moc nehrají roli. Cena té desky plošných spojů je směšná ve srovnání s cenou celku, zejména když GPU má ty své RAM pěkně okolo na substrátu. Při zátěži blízké 100% po 24/7 taky nedává moc smysl po roce dvou měnit GPU aby za měsíc něco okolo na desce vyhořelo, protože to GPU třeba poněkud víc žere než to původní či nějaké součástce zrovna doběhla životnost.

A teď ta práce s výměnou GPU, které žere 400W, takže správné napastování je naprosto zásadní, též správné nasazení chladiče (ovšem že jen tovární je ideální), toto není jako dávat BOX chladič na 65W procesor. Pro protažení 400W elektřiny je taky rozhodně lepší používat BGA a ne socket, Intel jistě ne náhodou dělá to samé se svými nejužranějšími CPU, které do socketu vůbec neprodává.

Dále crcání se o záruky když váš technik je debil nebo to debil není ale nvidie dojde k názoru že to debil je...To vážně nechceš. A sahal bys sám beze strachu na 199 000$ GPU abys ho vyměnil za další GPU za 199 000$? Já jen že to je skoro za 5 mega když to posereš protože ses dost dobře neuzemnil...

A potom tu máme poslední věc - fyzickou velikost. Při frekvenci, na které to běhá už je důležité jak blízko ty komponenty jsou u sebe, protože z jednoho konce desky na druhý už ti signály třeba nestačí přijít v požadované kvalitě (PCIe3 vs 4 vs 5 a jánevím co potom). S pomalejší generací to bude v pohodě, ale novější už může být příliš rychlá na to, aby fungovala spolehlivě.

Tedy ergo motyka z mnoha dobrých důvodů pochybuju že budou nejužranější GPU za miliony někdy v socketech, byť by to samozřejmě bylo z pohledu běžného uživatele zajímavé, moct si vyměňovat jenom GPU, rozšířit VRAM až cena klesne apod.

+1
+5
-1
Je komentář přínosný?

Jaký GPU za miliony? Systém s osmi A100 a - perlička - dvěma procesory AMD Epyc (Rome) 7742 s 64 jádry každý, vyjde na $199 000. Jedno samotné GPU v tomto případě i s VRAM by se pod 150 tisíc Kč mohlo vejít, ale tohle GPU+40GB HBM je ten největší extrém. Už profi grafika za 60 tisíc Kč s 16GB VRAM není nic běžného.

Psal jsem o kartách obecně a každá profesionální a herní karta nežere 400 W 24/7. Spíše tak 98% karet se vejde do cca o polovinu méně stresujícího limitu.wattů a času.

+1
-1
-1
Je komentář přínosný?

Už jen V100 stála samostatná asi 10 tisíc dolarů, tedy dvojnásobek 150 tisíc (s DPH).

Jinak třeba těch 27 tisív V100 v Summitu je chlazeno kapalinou, včetně procesorů. Nody mají 6x V100 a 2xCPU (nějaký 22c? IBM) Každé CPU řídí 3 grafiky.

Nejsem si jistý jestli každý rack case má to chlazení vlastní, nebo je to centralizované, k těm rackům vede spousta věcí, takže i to je možné...

+1
+1
-1
Je komentář přínosný?

150k za GPU+40GB VRAM jsou výrobní náklady + přiměřený zisk což je v případě Nvidie hodně těžko definovatelné - uznávám.

+1
-1
-1
Je komentář přínosný?

Ale uváděná cena V100 byla někde na 10 tisíci dolarech, to je výrazně víc než 150k. Navíc se bavíme o A100, který bude stát v lepším případě podobně.

tady máš PCIe verzi V100 za 8550 dolarů
https://www.amazon.com/NVIDIA-Tesla-Volta-Accelerator-Graphics/dp/B07JVN...

Bez daně v přepočtu přes 210 tisíc, serverová varianta stojí pokud se nepletu více. Na druhou stranu, pokud jich objednáš 40 tisíc, tak určitě dostaneš cenu níže a těch 150k za kus vypadá reálně.

Tady je Quadro GV100 - https://www.amazon.com/HP-3ME26AT-Quadro-GV100-Graphic/dp/B07GX7N41H/ref... přes 9k USD

+1
+1
-1
Je komentář přínosný?

27 tisíc V100 v Summitu se chladí vodou.

Pastování je naprosto triviální, je to otázka max pár sekund. Člověk má nějaký přípravek, nějakou šablonu co na ten čip, resp spíš chladič nasadí, pak má něco jako špachtli a tou přetáhne vevnitř té šablony pastu a hotovo. Takhle se například aplikuje pasta na chladiče při výrobě, to se může dít manuálně i strojově.

Žádná věda to není, té pasty se tam může dát hromada, i když to je jen plýtvání. Při tlaku jakým se ty chladiče k čipům přitlačí stejně téměř vše půjde pryč. Taky se tam určitě dává velice hustá pasta, žádná hodně vizkózní, která díky roztahování a stahování chladiče při cyklech idle/zátěž snadněji "vyteče". Naopak, čím dřív to vytuhne, tím lépe.

Ty NVIDIA výpočetní mašiny nemají servis v ceně? On se nedá domluvit nějaký maintanance? A tím nemyslím nějakou blbou NBD apod. myslím něco jako že do hodiny technik řeší problém, do 4 hodin musí být vyřešeno, jinak pokuty.

Počítám že ti co třeba spravují superpočítače jako zmíněný Summit asi jsou znalí toho co tam mají za HW a ví jak to řešit. I když tam asi v případě problémů prostě dočasně vypnou ten 2xCPU, 6xGPU node, což je jen nepatrný zlomek výkonu a počká se než na to přijede kouknout technik, pokud tam přímo není

+1
+1
-1
Je komentář přínosný?

Ach jaj Jirka jirka. Jasne ze maju aj viac ako NBD ale to je pre teba prakticky nerealne.

+1
0
-1
Je komentář přínosný?

Počítám že pro ty co platí 200k USD za jednu stanici to asi tak nereálné není, že.

+1
0
-1
Je komentář přínosný?

Blbost, Xe bude v socketu...

+1
0
-1
Je komentář přínosný?

Ta vymenitelnost tam je - GPU je na modulu od dob GP100 (SXM) a GV100 (SXM2). Pri takto vykonnem cipu (400W) je potreba mit napajeni rovnou na te same desce, velice tesne navrzeno jako celek. Socket mezi samotnym cipem a zdroji, nebo i signaly (nvlink je 25Gb/s+) vse jenom zhorsuje.

+1
-1
-1
Je komentář přínosný?

Po x letech kdy to jede na plný kotel tam jako budou rvát nové čipy na zmzačený board. Jo to je uvažování, světe div se to se nedělá ani v běžných počítačách s CPU. Tedy ano, je to jen malé procento retail trhu, drtivá většina počítačů se dává pryč tak jak se koupila a kupují se nové, neupgradují se.

+1
0
-1
Je komentář přínosný?

Nauč se číst. „Při těhle mega GPU, ať už herních nebo profesionálních". To znamená, že nepíšu jen o této kartě.
Rozjel by se second hand trh, který dnes funguje hlavně ve spojení s nepájenými CPU - RAMky, desky, CPUs. Dále by státy a firmy nemusely tolik utrácet. Když grafika stojí 10 - 100 tisíc, tak o kolik by se zdražila přechodem na CPU styl? Ten CPU styl totiž není nijak drahý.

+1
0
-1
Je komentář přínosný?

Jak říkám, kdo bude cpát na board několik let starý něco fungl nového? Navíc ten hloupý board je jen zlomek ceny té karty. U těhle je paměť na čipu. Takže na boardu je vesměs jen napájení. Když by byla paměť na boardu, bude nový čip umět pracovat se starými paměťmi? Budu chtít dávat k novému GPU staré GDDR5 apod? Asi ne.

A o tom to je, je to stejné jako s deskama a CPU, CPU v desce mění naprostá minorita lidí. Stejně tak paměti nebo fošnu pod tím CPU.

Další věc, proč by výrobce podporoval second hand ze kterého nic nemá?

+1
0
-1
Je komentář přínosný?

Nejlepsi kombinace je GPU od NVidie a CPU od AMD, myslim, ze tim, ze to doporucuje uz i NVidia tim stylem, ze to zakomponovala primo do svych grafickych pocitacu, tak uz snad nikdo nebude psat nesmysly, ze k NVidii se hodi Intel a k Radeonu se hodi procak od AMD.
Pamatujte si teda, vzdy je nejlepsi procesor od AMD, at uz mate jakoukoli grafiku!

+1
0
-1
Je komentář přínosný?

Záleží na co, na něco je lepší Intel + NV, na něco AMD + AMD, na něco AMD + NV nebo i IBM + NV/AMD.

Ti kdo mají specifické požadavky, typicky vědí co potřebují a co podává nejlepší výkon.

Pro mě to jsou letecké simulátory a tam není žádný AMD procesor lepší než Intel. Stejně tak žádná AMD grafika nepodává takový výkon jako NVIDIA a to dokonce s použitím Vulkanu.

Obecně pro hraní je pořád lepší Intel a NV nabízející vyšší výkon. Otázkou je zda je ten, kdo si to pořizuje ochotný za ten výkon platit. Toť celé.

+1
-5
-1
Je komentář přínosný?

Pujdes do toho novyho Microsoft Fligh Simulatoru? Ten by uz mel zvladat vice jader velmi dobre, takze bych s tim tvrzenim byl opatrny, ano mozna pro stary hry to tak plati a puvodni MFS si s vicejadrama vubec neumel poradit, ale pro novy bych zatim tak jasne netvrdil, ze Intel a nVidia jsou nutnost.

+1
0
-1
Je komentář přínosný?

ohledne te absence RT cores
kdyz rekneme, ze volta tensor core sou 1.0 a v ampere 2.0
neni proste mozny, ze RT byly neco jako 1.5 ?
DLSS 2.0 prece pouziva RT, neni teda mozny, ze TC 2.0 proste jen asimilovaly RT do sebe ?

+1
-1
-1
Je komentář přínosný?

DLSS ať stasré nebo nové 2.0 nebo dokonce 1.9 které bylo v Controlu (teď má už 2.0) nikdy nepoužívalo a nepoužívá RT jádra. Používá právě tensor jádra. Výjimka je DLSS 1.9 co bylo v Controlu, to nepoužívalo ani tensor a běželo to normálně na CUDA jádrech.

+1
+1
-1
Je komentář přínosný?

Pro psaní komentářů se, prosím, přihlaste nebo registrujte.