Zpět na článek

Diskuze: AMD Instinct MI300: útok na Nvidii i s kombinovaným CPU+GPU a HBM pamětmi

Nejsi přihlášený(á)

Pro psaní a hodnocení komentářů se prosím přihlas ke svému účtu nebo si jej vytvoř.

Rychlé přihlášení přes:

sonofthebit
sonofthebit
Level Level
16. 6. 2023 09:09

Komentáře tohoto uživatele máš zablokované.

To bude zajímavý souboj:

x86 CPU + GPU ..... od AMD
vs.
ARM CPU + GPU .... od Nvidie

Akorát ARM Neoverse V2 jádro má IPC o 19% větší než Zen 4 a záveň nižší spotřebu.
Navíc ARMové SIMD SVE2 má instrukce pro maticové operace.

Nevím jestli je moudré osadit mnohem horší architekturu a očekávat zvýšení prodejů a podílu na trhu.

zero8327
zero8327
Level Level
16. 6. 2023 10:09

Komentáře tohoto uživatele máš zablokované.

@sonofthebit Výkon procesora určuje IPC × frekvencia × počet jadier ....a tie SVE2 by som zase oproti AVX2/AVX512 nepredceňoval. AMD veľmi dobre vie, čo robí a vidieť to aj na tom, ako obsadzuje čoraz väčšiu časť serverového trhu.

Milan Šurkala
Milan Šurkala
SHW SHW
Operační systém: PC
Procesor: AMD
Grafická karta: NVIDIA
16. 6. 2023 10:21

Komentáře tohoto uživatele máš zablokované.

@zero8327 "vidieť to aj na tom, ako obsadzuje čoraz väčšiu časť serverového trhu."

Není na tom vidět vůbec nic. Je potřeba se dívat na to, komu ten serverový trh odebírá. Není to na úkor ARM, ale na úkor Intelu na x86. Tím ale ve srovnání ARM vs x86 nedokážete nic, protože se bavíte o změně tržního podílu v rámci segmentu x86. To co se děje v rámci segmentu x86 ale nic nevypovídá o tom, jak si vede segment x86 vůči segmentu ARM.

sonofthebit
sonofthebit
Level Level
16. 6. 2023 11:58

Komentáře tohoto uživatele máš zablokované.

@zero8327 Přesně tak. ARM za pouhé 2 roky v serverech dosáhl 10% podíl.
AMD na 10% potřebovala kolik? 5 let jestli se nepletu. A to AMD nemusela řešit nekompatibilní ISA a rekompilaci a optimalizace ručně napsaných částí kodu se SIMD instrukcemi.

SVE2 bych ani nepodceňoval. CPU ARM Fujitsu FX64 s pomocí SVE instrukcí dokáže porazit GPU od Nvidie. Ukaž mi x86 CPU co výpočetně překoná obří GPU Nvida Volta, navíc při stejné spotřebě. Navíc na tom postavili nejrychlejší superpočítač na světě.

Navíc SVE2 už má dnes každý nový mobil a protože nemá fixně danou šířku vektorů (HW registrů v CPU, ta může být od 128-bit až po rekordních 2048-bit), tak je může využívat chytrá pračka v mikrokontroléru až po nějaký super nabušený CPU pro superpočítač někde v daleké budoucnosti. Ten třeba bude umět SVE8, ale tvůj dnešní SW z roku 2023 ti na 2048-bit vektorech pak poběží 16x rychleji.

To x86 s těma fixníma délkama vektorů nedokáže. Starý SW využívající 128-bit SSE4 neumí běžet 4x rychleji na AVX512. ARM to umí. Proto má AVX512 problém s rozšířením, protože to je velká prasnice, která se pro většinu desktop CPU naprosto nehodí. Zen 4 třeba ty 512-bit vektory stejně vnitřně rozkládá na 2x 256-bit. Intel Gracemont zase 256-bit AVX2 vnitřně rozkládá na 2x128-bit podobně jako Zen 1. Ono pomáhá totiž i skalárnímu IPC, když potřebuješ udělat v C´++ ´kódu výpočty použitím Double (FP64), tak ti to obsadí celou SIMD šířku vektoru (ostatní pozice se doplní nulama), což znamená že s 2x256 máš dvakrát větší skalární IPC než s 1x512.

Idelální by bylo 512-bit vektor rozsekat na 4x128-bit, jenže to nikdo z x86 nedělá. Ale třeba ARM X3 i Apple M2 mají 4x128-bit SIMD jednotky. Jen to ne´tlačí přes 512-bit registry SVE2, ale malé 128-bit SVE2 s tím, že paralelní zpracování musí zajistit OoO Reorder engine v CPU (a nikoliv kompilátor s ruční optimalizací). Což je v podstatě jiná forma autovektorizace. To mi přijde jako velmi chytré řešení, protože dnešní CPU má reorder okno na 300 až 600 instrukcí, takže není problém detekovat 4 vektory které nejsou na sobě datově závislé a poslat je tam paralelně jako by to byl jeden 512-bit vektor. Akorát binárka bude větší: 4 instrukce vs 1.

Třeba jádro V1 umělo 2x 256-bit SVE (vnitřně 4x128-bit) zatímco nová V2 umí pouze 4x 128-bit SVE2. Když jsem viděl V1 tak jsem si mylně myslel, že V2 přijde s 1x512-bit SVE2. A ono ne. Vykašlali se na 256-bit i 512-bit z nějakého velmi dobrého důvodu. A tím je podle mne jednak fragmentace ala x86, což je peklo a ani po 6 letech AVX512 nevypadá že bude brzy standardem bez něhož ti nenabootuje OS, a tím druhým je HW autovektorizace přes OoO. Ostatně hloupé InOrder GPU potřebují dlouhé vektory protože by to bylo plýtváním tranzistorů na OoO autovektorizaci, kterou může udělat místo toho kompilátor (ušetřené tranzistory využít pro další výpočetní jednotky). Taky AVX512 bylo původně vyvinuto pro Larabee, Intelovo "GPU" s x86 Atom jádry.

Čistě teoreticky vektory porušují abstrakci ISA, resp její nezávislost na šířce registrů v CPU a tím se dostává blíže VLIW a všem problémům s tím spojeným (zdravíme Itanium a dnešní fragmentaci x86). Správně by ISA měla mít místo vektorů nějakou instrukci pro paralelní vykonávání. Něco jako "následující instrukci proveď 16x s o jedničku inkrementovaou adresou pointerů proměnných". Jenže tohle by měnilo ISA a bylo by složitější na implementaci než to jednoduše zaVLIWovat do HW. Tak Intel vzal 80-bit FPU registry x87 a mrsknul na to MMX vektory a od té doby se problémy a fragmentace jen navyšuje.

kutil05
kutil05
Level Level
16. 6. 2023 13:06

Komentáře tohoto uživatele máš zablokované.

@zero8327 Fujitsu FX64 není úplně dobrý příklad, sice spočítá vše bez pomoci GPU ale za cenu násobné spotřeby. A ta u superpočítače může rozhodnout o tom, zda se takový stroj vůbec vyplatí.

sonofthebit
sonofthebit
Level Level
16. 6. 2023 16:26

Komentáře tohoto uživatele máš zablokované.

@zero8327 Ukaž mi ale čistě CPU-only x86 superpočítač. To by byla úplná tragédie, proto se ho ani nikdo nepokouší postavit.

Pointa je ta, že jakmile potřebuješ spustit nějaký jiný kód než vysoce paralelizovatelný Linpack, tak všechny GPU jdou do kopru. Kdežto tento Armový CPU-only superkomp bude mít třeba 10x nebo 100x větší výkon, protože to je docela slušný a moderní CPU s OoO a 4x ALU.

Abys spustil výpočet na GPU tak musíš v C++ napsat kopírování vstupů z RAM do VRAM a pak výsledky zase zpět, což znamená že to zpomaluje výpočet a taky musíš mít 2x víc RAM. To sice AMD řeší tímto kombinovaným čipem a tedy unifikovanou RAM, ale pořád to GPU se ti zhroutí jakmile tam nasekáš nějaké IF, FOR, WHILE podmínky. A pořád je to heterogenní, takže musíš ručně psát optimalizovaný kód zvlášť pro GPU a zvlášť pro CPU. Jen odpadne to kopírování dat.

Chtělo by to nějakou unoverzální ISA která by byla stejná jak pro CPU tak pro GPU i pro NPU. Takto by šlo konečně vytvořit XPU, univerzální procesor který zvládne jak extrémně paralelní data ala GPU, tak i skalární kód ala CPU.

kutil05
kutil05
Level Level
16. 6. 2023 18:25

Komentáře tohoto uživatele máš zablokované.

@zero8327 To je tedy docela zajímavé, že prakticky všichni dělají superpočítače s GPU. Asi takový problém nebude a nejspíš ten stroj počítá natolik masivní množství dat, že software optimalizovat jde a patrně je těch dat tolik, že potřebného rozhodování nebude tak moc. A nebo je to prostě jen tím, že energetická efektivita naroste natolik, že větší nároky na datové přenosy prostě nevadí. Ostatně to že Nvidia i AMD kombinují CPU přímo do akcelerátoru, bude asi funkční řešení celého problému. A ještě drobnost, určitě nikdo nedělá superpočítač za desítky milionů dolarů, jen aby na něm pouštěl benchmark.

sonofthebit
sonofthebit
Level Level
17. 6. 2023 09:21

Komentáře tohoto uživatele máš zablokované.

@zero8327 Všichni musí používat na výpočty GPU, protože jim nic jiného nezbývá. x86 procesory za vlády Intelu stagnovali 10 let, a GPU jim vývojem ujely o parník. Nvidia pouze využila neschopnosti Intelu a chopila se příležitosti.

Zbytečné datové přenosty z RAM do VRAM vadí extrémně. Víš jak topí VRAM na herní grafárně? Tak si představ 8x výpočetní GPU kde každá má 10x víc VRAM než běžná herní grafika ( A100 má 80GB VRAM ) a to vše v jednom šasi s dvouprocesorovým 2x 96-jádrovým AMD Epyc. Takže nejen že musíš čekat až se to zkopíruje po pomalé PCIe, ale navíc musíš mít zdublovanou kapacitu VRAM do RAM. Takže platíš dvakrát víc za paměťové čipy a ještě jejich spotřebu energie. I tak to je masivně rychlejší a žere to méně než CPU na staré zaostalé x86 samozřejmě, jinak by to nedělali.

Na youtube máš tutoriály jak si spustit jednoduchý výpočet na GPU. Za pár minut se to naučíš, místo zvanění nesmyslů. Tam taky uvidíš že ikdyž ti odpadne to kopírování, pořád v tom C++ pro GPU musíš dodržovat určité optimalizace, pro každou generaci GPU jiné, jinak výkon půjde do háje. A hlavně musíš řešit drivery, počítáš to přes OpenCL nebo přes Cuda, kdykoliv se ti to může rozbít s novým driverem atd.

Tohle všechno odpadne s CPU-only superpočítačem, jenže na to musíš mít moderní a efektivní ISA (to ARMv9 je, a naopak x86 ani nemůže být díky CISC), taky musíš mít SIMD schopné nahradit GPU (což ARM má ve formě 2048-bit SVE vektorů) a nakonec musít mít kvalitní CPU, který to vše využije (borci z Fujitsu vyvinuli nabušený A64FX, který je architekturou hybrid mezi CPU a GPU).

kutil05
kutil05
Level Level
17. 6. 2023 11:35

Komentáře tohoto uživatele máš zablokované.

@zero8327 I tak má ten hybrid dost vysokou spotřebu. A ještě taková vtipná poznámka. Výpočty na GPU nevymyslela Nvidia ale AMD. Ovšem Nvidia na tom nyní vydělává. Já jsem taky nepsal, že je to lepší řešení, pouze to že je energeticky efektivní, protože dostat se na stejný výkon jen s CPU znamená větší spotřebu.

Milan Šurkala
Milan Šurkala
SHW SHW
Operační systém: PC
Procesor: AMD
Grafická karta: NVIDIA
17. 6. 2023 17:53

Komentáře tohoto uživatele máš zablokované.

@zero8327 No počkat, ale co s tím má co společného OpenCL v roce 2009? Nvidia CUDA je už z roku 2007, jenže AMD Stream vznikla dokonce už 2006 (takže AMD bylo před Nvidií). Každopádně Nvidia to podstatně lépe zvládla a už v roce 2009 bylo docela jasné, že řešení Nvidie je to, které se primárně uchytí.

sonofthebit
sonofthebit
Level Level
17. 6. 2023 19:32

Komentáře tohoto uživatele máš zablokované.

@zero8327 OK, to jsem nevěděl, do grafik moc nedělám. Googlil jsem první OpenCL nasazení, jakožto společný standard, což jsem považoval za důležitý startovní bod.

Být první, ale prachy si nechat vyfouknout Nvidií..... to je snad ještě horší varianta. Hlavně z pohledu inženýrů co to vymysleli a management to pak zakukal. Stejně tak jako první přecházeli v AMD na ARM s K12, ale taky to zazdili.... na což pomalu už začínají doplácet nyní.

kutil05
kutil05
Level Level
17. 6. 2023 20:41

Komentáře tohoto uživatele máš zablokované.

@zero8327 Jenže v té době zrovna AMD v nejlepší kondici fakt nebyla.

sonofthebit
sonofthebit
Level Level
18. 6. 2023 17:04

Komentáře tohoto uživatele máš zablokované.

@zero8327 Takže 3 roky cpát do vývoje K12 miliony a pak když je hotový (K12 měl tape out) tak ty investované prachy z toho ani nedostat zpátky prodejem?

Kdyby šlo o šetření peněz:
a) tak to ani nezačali vyvíjet
b) nebo zmonetizovali to co vyvinuli, ale nástupce by odsunuli až budou mít prachy
c) teď mají peněz dost, ale K12 nebo nástupce se evidentně nechystá, takže o prachy evidentně nešlo
d) oni už prodávali ARM Opterony A1100, to zařízli taky, přitom to využívalo licenčních již hotových jader od ARMu

Šlo o to, že se ukázalo že architektura K12 je stejná jako u Zen 3, tedy K12 by měla větší výkon než x86 Zen 1. Oba čipy jak K12 tak Zen 1 měly mít stejnou plochu když byly oba pro socket AM4, a protože ARM sebou netahá hromadu starých věcí, tak logicky zbylo více místa na větší IPC.

Motiv šetření se uvádí jen proto, aby je akcionáři nezažalovali za poškozování firmy. Ve skutečnosti šlo o neskutečný prachy z monopolní x86, pokud porazí Intel. ARM je otevřená ISA s desítkama výrobců čipů a celkem 4 design týmy (Apple, ARM, Nuvia, Ampere, ještě tam dříve byl Samsung, Cavium, Qualcomm). V segmentu ARM žádný monopol neuděláš, takže to koroporáty nemají rády.

Akorát manažerům v AMD nedošlo, že x86 je stará sračka která proti modernímu ARMu nemá vůbec žádnou šanci. Stejně jako ARM nebude mít šanci proti nějaké jiné o třídu lepší ISA, která teprve přijde. Všechno se vyvíjí a bylo velmi naivní se domnívat, že po RISCu nikdy nic lepšího nepřijde.

kutil05
kutil05
Level Level
16. 6. 2023 18:42

Komentáře tohoto uživatele máš zablokované.

@sonofthebit Srovnávání IPC u různých architektur CPU může být problematické. Měří se nějakým algoritmem a ideálně by těch algoritmů mělo být co nejvíc. Protože jinak se může stát, že máme dva procesory a oba vypadají stejně výkonně nebo je rozdíl do pár procent, ovšem v jiné zátěži je jeden lepší a v další je zas pomalejší a klidně v násobcích. Takže to že má ARM Neoverse V2 IPC o 19% větší než Zen 4 nemusí nic znamenat.
ARM má čistější architekturu než x86-64, ale vývojáři s x86 zase pracují déle a znají dobře slabiny i silné stránky a umí s nimi pracovat. Navíc v reálném světě o úspěchu nerozhoduje pouze lepší výrobek. Hodně dělá i samotný trh a přechod na ARM pro někoho může být moc drahý.

sonofthebit
sonofthebit
Level Level
17. 6. 2023 11:02

Komentáře tohoto uživatele máš zablokované.

@kutil05 A stačí 16 programů / algoritmů co je v benchmarku GeekBench 6?

Dole na stránce máš výsledky všech sub-testů:
https://browser.geekbench.com/v6/cpu/1540368

Samozřejmě že nerozhoduje lepší výrobek. Si přečti jak Intel koupil a zavřel lepší 64-bit Alphu, včetně revolučního procesoru EV-8, jak dopadl StrongARM vlastněný Intelem nebo jak Intel přemluvil HP aby zastavili vývoj vlastních procesorů PA-RISC. Proto tu máme v počítačích 30 let předražený monopol s občasným zmrtvýchvstáním AMD. Ani AMD není lepší, si přečti jak AMD zabila RISC K12 přestože byl lepší než Zen 1. Korporátu jde především o prachy a monopol je nejlepší cestou.

x86 je majetek Intelu a nikomu novému ji nedovolí používat. Obhajovat tuto odporně zastaralou monopolní uzavřenou instrukční sadu může jen ten kdo nerozumí co to je CISC a neví že všechny x86 CPU stejně uvnitř běhají jako RISC. Tudíž tento zbytečný HW překlad CISC-> RISC zaplatí na energii a na větší velikosti čipu. Plus cenovou přirážku za monopol.

Žába na prameni, ještě že už brzy chcípne konečně....

kutil05
kutil05
Level Level
17. 6. 2023 11:43

Komentáře tohoto uživatele máš zablokované.

@kutil05 Alphu zabil přímo Digital, když firma začala krachovat, koupil ji Compaq, který sám byl v problémech a ten byl potom koupený HP, které ale měl vlastní PA RISC a navíc začínalo vývoj Itania s Intelem. Tam nebyla šance, že by Alpha procesory přežily. Kromě toho je otázka, jak dlouho by se dařilo držet náskok. Alpha procesory měly ručně optimalizovaný návrh (v době kdy ostatní používali automatický) a díky tomu dosahovaly vyšších taktů, jenže kvůli tomu byly taky velmi drahé.

sonofthebit
sonofthebit
Level Level
17. 6. 2023 14:16

Komentáře tohoto uživatele máš zablokované.

@kutil05 ... a tak nějak zapomněl dodat, že od Compaqu Alphu koupil Intel včetně patentů (z Alphy EV-8 použil memory disambiguation v Core2 Duo), nadějný procesor zrušil (mimochodem měl 8xALU a uměl 4 vlákna na jádro, což dodnes tu není a mohlo tu být v roce 2003).

... v té době kolem 2000 měli ručně optimalizovaný návrh úplně všechny firmy. První automatickou optimalizaci použili v AMD až u Bulldozeru v 2011, až pak Intel.

... do té doby byla 64-bit Alpha (RISC) nejlepší ISA (v té době měl Intel jen zaostalé 32-bit x86, že)
... a procesory Alpha EV-6 a EV-7 byly nejvýkonější CPU.
... AMD K7 měla koupenou od DEC licenci na její DDR FSB původem z EV-6
... AMD K8 měla integrovaný paměťový řadič po vzoru EV-7

Ty jsi nějaký majoritní vlastník Intelu ne? Normální člověk by přece takto nelhal bezdůvodně kvůli Intelovu majetku AKA x86.

kutil05
kutil05
Level Level
17. 6. 2023 16:54

Komentáře tohoto uživatele máš zablokované.

@kutil05 Možná si nepamatuji všechno, ale určitě úmyslně nelžu. Jen už je to dlouho, co jsem si o tom četl.

sonofthebit
sonofthebit
Level Level
18. 6. 2023 17:12

Komentáře tohoto uživatele máš zablokované.

@kutil05 V pořádku pokud to bylo takto neúmyslné.
Ale chtělo by to trošku méně naivity, protože pokud se někde dějí největší špinavosti tak jsou to korporáty a politika.

Reklama
Reklama