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

Diskuse k První x86 procesor s >1 GB L3 cache vyfocen

Napadla mne také otázka jaké CPU má větší cache.
Tohle není klasické CPU (spíše cupercomputer on chip)
https://www.cerebras.net/product-system/
40GB SRAM
Víte někdo o tradičnějším CPU s opravdu velkou cache?

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

Intel v dobe 5-th gen mel 128MB eDRAM jako L4 cache. Vydal dva desktop modely (i5 a i7 - 5xxxC) a nekolik mobilnich verzi to melo taky. V te dobe bylo bezne mit jen 4M-8M. Dnes - po deset letech, mas v Epyc-u bezne 128M az 256M cache kdyz sectes vsechny L3 na cipletech.

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

eDRAM je klasická ramka s odděleným (zjednodušeným) řadičem. To bych do cache moc nepočítal - tam počítám SRAM. Tušíte někdo jak to fungovalo? Jako klasická HW cache něco jako plně asociativní cache, nebo to bylo jen pro grafiku?

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

Ale cache je prece v zaklade SRAM, a onen lookup (v cache directory) je spis soucasti cache controlleru, ktery muze byt i diskretni (era 386). V dobe pentii - pentium3 se uz jenom k cpu pripojovali samotne sram cipy, protoze radic byl integrovan. To, kam se ta pamet pripojovala se jmenuje back-side bus, coz je duvod proc FSB je front-side bus.

Takze kontrolni otazka - obsahuje amd cache addon chiplet i tag directory, nebo se jedna pouze o sram? (jako designer bych ty tagy dal porad na zakladni cpu die, kvuli latencim lookupu).

Ta L4 mela ruzne rezimy a je tezke odlisit co bylo zbozne prani a co bylo implementovano v realite - a co bylo pouzitelne. V tomto to tajnustkarstvi a uzavrenost reseni spis nahrava tomu, ze tam byl nejaky neprekonatelny fuckup nebo bota, kterou si navrhari Intelu neuvedomili.. to se jim dle Moore stava tak jednou za rok a pul ci dva :P

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

Nemyslím si, že by takové existovalo.
Krom ARMů, kde se ale velká cache zatím nevyskytuje, dělá výkonné enterprise CPU ještě IBM, a to končí na 120 MB L3 cache na CPU.
Je samozřejmě otázka, jak takovou cache budeme brát; co se týká paměti v pouzdře, tak hloupé Raspberry Pi má v SoC integrovaný nějaký ten gigabajt, a každý smartfoun je na tom podobně.
Zajímaly by mě GPU, tam se ta cache může hodně vyplatit, ale to už je podobný příklad jako ten Cerebras.

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

Hľadal som síce narýchlo, ale rozmery toho CPU som nenašiel. Nešlo by ich do článku dopísať? Dnes sa L3 cache blíži tomu čo mám do dnes v PC s Pentiom 4 a je to úplne natesno RAM limitu W98 (Rayer testovaním došiel k limitu 1159 MB /je nutné limit nastaviť v system.ini/) :D. Keď ten Epyc porovnávam s mojou prvou i486, ktorá mala cache 0,5 MB a 16 MB RAM... 2304× viac, resp. 72×.

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

Akorát, pokud vím, cache se do systémové paměti nepočítá, a OS nemá absolutně kontrolu nad tím, co v ní je.
Nad operačním systémem běžícím v cache jsem se zamýšlel v dobách C2D, kdy už ty CPU měly třeba 2MB cache, což byla tehdy minimální paměť pro ty nejmenší Linuxy. A protože se tehdy jela vlna, že RAM CPU zdržuje ze všeho nejvíc (mimo úložiště, to se řešilo až později, když se řadiče paměti kvůli latenci umístily do CPU), tak se samozřejmě systém běžící v cache nabízel jako řešení tohoto problému.
Nicméně pokud zachováme CPU beze změn, takový operační systém by musel být opravdu velmi specificky napsaný, a kdo ví, jestli by vůbec fungoval.

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

Čistě teoreticky, by to mohlo fungovat a nemuselo by to být tak specifické jak by se mohlo zdát.
Záleží spíš na tom, jaký management je u té cache.
Nikdy se nezbavíš problému s datama například na disku a tím i prací s klasickou RAM.
To zrychlení totiž není zase až tak velké. Základní vlastnost OS je totiž v tom, že spouští aplikace. Vše ostatní je něco navíc. Takže pro reálné použití vlastně nemá smysl dát celý OS do chache CPU. Protože to podstatní v ní už bude.
Například rutina pro správu procesů, rutina kopírující data, rutina na obsluhu HW ... to všechno tam bude, protože z logiky to jsou věci co se používají prakticky neustále. Jenže ty už tam jsou i teď.
Proč má takové CPU význam jsou operace s velkými daty. V situaci kdy můžeš hodit do cache třeba 500 Mb blok dat a nad ním udělat nějakou operaci (a to nedělá OS). Rázem jsi úplně někde jinde.
Přirovnat by to šlo, například k tomu, že místo klasického disku máš SSD a větší balík RAM kam se ti vejdou data i z velké excelovské tabulky a tak se nemusí swapovat na disk.

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

Mně šlo právě o využití k práci s větším množstvím dat, pojem OS asi nebyl zvolen úplně ideálně.
Právě moje představa takového systému je, že přes infiniband nebo jinou rychlou sběrnici stáhnu balík dat do paměti s co nejnižší latencí, nad tím provedu ty operace, a výstup zase pošlu ven. Přičemž RAM může sloužit jako cache k té externí komunikaci.

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

Však to obecně funguje. Proto je o tyhle CPU zájem, protože například při aplikacích jako je strojové učení tohle umožní zvětšit množinu dat přímo v cachce CPU což u vícejádrové konfigurace znamená, že nad jedním balíkem dat jde super rychle dělat operace s více jádry najednou.
Strojové učení znamená většinou analýzu dat, což je pro víc jader velice dobré využití. Netřeba řešit kde se data potkají, každé jádro může dělat jiný druh analýzy.

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

Jasně, to je očekávatelný závěr, a dostal jsem ho už tehdy; cache dělá, co má, nemá smysl do toho hrabat.
Šlo o to, jestli vlastně můžu provozovat CPU bez RAM, a to prostě nejde, a i kdyby to šlo, nemělo by to zásadní dopad na výkon (pozitivní).

Jak si řeší scheduler, co poběží na kterém jádře, aby to mělo přístup do té správné cache, zvlášť pak pro vícesocketové systémy, to raději vědět nechci :-D

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

Mb, alebo MB? Ale aspoň, že nie milibit :D.

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

Cache se jako RAM pouziva behem bootovani, hledejte pojem CAR. Tohle me opravdu zajimalo pred lety - protoze jsem linej navrhovat DDR3-4 rozhrani a na nektere me aplikace by postacilo mit jen tu 8M-55M cache jako RAM. Proste degradovat Intel Core/Xeon na uroven MCU s integrovanou pameti.

Bohuzel to narazi na dve veci - aktivace CAR je velice model specific (coreboot o tom vi sve) a pak tusim tam nejde stejne delat DMA z PCIe (nektere intel cpu meli urcity akceleracni mechanizmus, ze sitovka cpala pakety jen do cache, namisto komplet zapisu skrze MC do ram).

Taky si ale myslim, ze moderni OS by mohl v ramci NUMA alokatoru nabidnout prave alokaci nejake mensi oblasti jako CAR, s tim ze to bude linearni oblast, bez cache-miss - tj. na kriticke casti kodu jako ideal (GPU to resi napr. tak, ze ma cca 64-128KB lokalnich registru).

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

To bol len hypotetický príklad toho aká je cache toho Epycu veľká.

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

Jo tak to byla ještě hodně nadupaný 486. Protože v začátcích to valilo spíš 4MB a 8 lidi kupovali kvůli Duke Nuke a Descentovi (Doom běžel na 4MB) a pak už byly Pentia. :-)

V tu dobu jsem měl ovšem Amigu a v ní jsem měl 2x 64MB SIMM. Což bylo pro Amiga OS který běžel i na 256Kb RAM naprosto neskutečné (Buffery na disky, atd. perfektné využívání RAM Disku atd. :D).

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

Samoz. že ja som i486 nekúpil v 1989, ale o 10 rokov neskôr keď už boli Pentia III a nebol problém mať aspoň 24, alebo 32 MB. Mal si Amigu 500? Ako to, že následujúce Amigi mali menší limit na RAM?

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

Neměl, měl jsem až Amigu 1200 ta měla 2MB Chip RAM a FAST Ram realně omezená nebyla. Nebo spíš pokud jsi měl jen tu FAST Ram tak tě limitovala EC verze Motoroly 68020 (MC 68EC20) ta totiž měla jen 24bitový adresní prostor. Na turbokartách ovšem většinou byl jiný CPU (plnotučná 68020/68030 a později i 68040 a 68060 nakonec dokonce PowerPC 603e a 604). Tam už nebyl problém.
Jinak Amiga OS technicky nemá omezení na paměť.

Amiga 500 se tuším dala rozšířit o 512 KB CHIP Ram (celkem 1 MB) a 8 MB Fast Ram (důsledek 16 bitové sběrnice).
Amiga 500+ se dodávala už s celým 1MB (o CHIP Ram se starala Agnus takže existovali 3 revize).
S Amigou 3000 dorazila FAT AGNUS co uměla 2 MB CHIP a ta byla i v Amize 600 takže tam jde osadit karta co rozšíří tovární 1 MB na 2 MB. Pochopitelně FAST Ram jde doplnit taky.
Jinak 64MB SIMM paměti byly fakt rarita blbě se to shánělo. Ono jich tolik nebylo. V podstatě se objevili až ke konci existence tohohle paměťového standardu.
Nedávno jsme z hecu udělali test kolik dokážeme dostat do Amigy dostat paměti pomocí klasických Motorola CPU a karet.
2 MB CHIP
8 MB v PCMCI slotu (SLOW RAM)
128 MB na turbokartě (FAST RAM).
Vtipné je na tom, to že OS si s tím dokáže poradit a fungovat jak má (SLOW RAM - požije až jako poslední, CHIP jen na zvuk a grafiku pokud musí, FAST na všechno co potřebuje prioritně CPU).

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

Ja mel tehdy 32 MB RAM a vyvalil jsem za ni udesnych cca 32 000, coz by na dnesni penize odpovidalo cca 250 000.

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

To bude mazec. Celý můj PoW workload se vejde do L3. To je pro memory-hard věc docela problém.

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

OMG, taký nádherný čip a také nevkusné gélové nechty! :-)

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

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