Stránka 3 z 5

Re: Historie, budoucnost a hypoteticke scenare kolem CPU v c

Napsal: čtv 3. črc 2014, 08:17
od del42sa
K9 appears originally to have been an ambitious 8 issue per clock cycle core redesign of the K7 or the K8 processor core.[1] At one point, K9 was the Greyhound project at AMD, and was worked on by the K7 design team beginning in early 2001, with tape-out revision A0 scheduled for 2003. The L1 instruction cache was said to hold decoded instructions, essentially the same as Intel's trace cache.

The existence of a massively parallel CPU design concept for heavily multi threaded applications has also been revealed, as a planned successor to K8. This was reportedly canceled in the conceptualization phase, after about 6 months' work
.[2]

At one time K9 was the internal codename for the dual-core AMD64 processors as the brand Athlon 64 X2,[3][4] however AMD has distanced itself from the old K series naming convention, and now seeks to talk about a portfolio of products, tailored to different markets.[5]
there was an AnandTech article that AMD aimed K9 to be a heavy Integer calculation processor with up to 4 cores but decided to design a processor more suitable to their "customers" mainly aimed on the server side of things. K9 was scrapped.

So now we end up with K10/Barcelona which is a more balanced processor very good on floating points and not bad on the others, clearly i think AMD's target market and their customers are happy with K10 so far.
JF-AMD
10-12-2009, 07:35 PM
I read somewhere back on the INQ a ages ago that k9 was a failed massive multicore project, from what I read AMD basically hit a thermal/size barrier. Not sure if it was correct though

It wasn't.

And we don't use "K's" anymore internally, which is why you don't see it.

Re: Historie, budoucnost a hypoteticke scenare kolem CPU v c

Napsal: čtv 3. črc 2014, 10:10
od del42sa
a co bude po BD family ? čím dál více se přikláním k přesvědčení, že půjde o inkrementální vylepšení f16h ( tedy Cat core ). Delší pipeline (vyšší frekvence), vícekanálový řadič, L3 cache, širší front end ( 4 way issue ? ) , silnější FPU (pravděpodobně) , to je most probable scenario.

Povídání možné i nemožné o CPUčkách historie i budoucna

Napsal: pát 11. črc 2014, 15:51
od flanker
K tomuto tématu mě navedlo jiné vlákno, kde je cítit "přátelský" oddech od neustálých dohadů, flamů apod.
SOuviselo to i s hledáním Sempronu a zavzpomínání na staré časy, jak to vše neskutečně letí...

Imho Sempron http://www.svethardware.cz/recenze-amd- ... evne/10386


Nebo krásné pousmání nad tehdejší novinkou o 10GHZ CPU :)
http://www.svethardware.cz/intel-nehale ... -2005/7335

Kam to ale pospěje postupně? Lze čekat něco od Skylake a nebo se dokáže AMD s Kellerem vytasit a předvést něco zajímavého? Může ARM a nebo hybrid ARMU a x86 změnit budoucnost na výkonovém poli? Na jaký CPU nejraději vzpomínáte a který zajímavý a fungující oldschool máte doma?:)

PS: na K6 AMD s 256 MB RAM lze kupodivu rozjet Doom 3 :-D

Re: Povídání možné i nemožné o CPUčkách historie i budoucna

Napsal: sob 12. črc 2014, 13:26
od flanker
Narazil jsem na krásný výpočet procesoru Cyrix v Superpi. To už chtělo hodně trpělivosti :-))

http://hwbot.org/submission/2116744_chr ... _30sec_0ms

Eventuálně Superpi 1M na 486DX :)
http://hwbot.org/submission/925403_oran ... 1sec_570ms

A nebo dokonce na 386 Superpi na 1M. Více než 27 dnů počítalo 1M :-D
Obrázek

Re: Povídání možné i nemožné o CPUčkách historie i budoucna

Napsal: sob 12. črc 2014, 14:03
od havli

Re: Povídání možné i nemožné o CPUčkách historie i budoucna

Napsal: sob 12. črc 2014, 14:49
od DOC_ZENITH
Pročko s 1GB ram? A já si řikal, pche moje pročko těch 128MB napočítalo teda mnohem rychlejc... a pak jsem teprve viděl ty paměti a spadla čelist. :P Tenhle stroj celej jak je měl ve svý době takovou cenu že by jsi si za něj koupil celej PCT i s readkcí. :P

Já mam doma retro kompů tunu, momentálně 6 funkčních. Od 486 po Dual Xeon gallatiny, je zde tuna P3, ňáké K7, Cyrix MMII, válí se tu nepoužitá tuna K6 pentií MMX, atd, atd. Mam tu i vzácné kousky, rise MP6, různé nestandardní overdive, atd. Honě mam rád mé 2 Xeony 550 s 2MB fullspeed L2 a nově vybalenym nepoužitym boardem:

http://i.imgur.com/gy00CSA.jpg

Je toho tuna, většina v postavenejch PC nasintalovanj dualboot win98 a win2K nebo XP, vždy ready na zapojit a jedem. Je to spíš taková úchylka protože je stejně provětrám vždy tak jednou za rok aby disky nezatuhly a jinak seděj. Heh, jestli z toho něco chcete zapojit a pojet tam ňákej benchmark stačí říct.

K Flankerově úvaze, přinese konečně něco dobrého Skylake? - Ne, intel by mohl lidem dát mnohem silnější CPU, ale je to škrt. Cokoliv od AMD? - ne, AMD je neschopné. ARM - Ne, to nebude mít nikdy pořádnej výkon. Já vidim 2 směry.

Jeden a to bude konečně pokrok, bude komplet změna principu, umělej diamant pro mnohem pokorčilejší výrobu, či kvantová PC či memristory místo cache a RAM, atd, atd. Případně kombinace těchto faktorů. Do té doby nás čeká akorát stagnace, problém je že se neví jak dlouho, ta tu může bejt 5 let nebo třeba 20 let že.

Během této stagnace se oběvěj směry jak obejít zastaralost platforem a omezenost CPU. Určitě poroste více využití GPU pro různé věci, ale GPu neni až tak vhodné na to co CPU normálně dělá. Pak tu budou specifické operace které nahradí specifické obvody. Třeba H265... kdo by to enkódoval přes CPU. 8mbit 4K video v H265 přehrává moje oclá 3820 s zhruba 60-70% CPu loadem, vedle I5 760@ 3,7Ghz to nedá, místy se to cuká. Pokud je takhle slow přehrávání, představte si enkóding ughm... pokud nemam x procesorového Xeona každej minimálně 10+ jader tak si můžu odjet na dovoleno ua možná za tejden ten render bude hotovej... EE, takhle to nejde. GPU na to rovněž nejde pustit, protože enkóding přes GPU je zatím stále zlej, na NV je nekvalitní, na AMD mi přijde kvalita ok ale velikost výstupího souboru pro stejnou kvalitu byla oproti CPU only dvojnáobná egm... tak tudy také ne.

Spíš čekám nárůst specifickejch asic obvodů pro konkrétní úlohy. Budeme mít obvod na enkóding H265, kterej bude x krát rychlejší jak CPU a při práci bude PC stále free k provozu, ne full loaded. A podobně. Tenhle proces bych přiroval k těžbě bitcoinu. Napřed jsme hashovali přes CPU, pak přes GPU, pak přes PGA, a pak jsme dospěli až k asic. To můžeme pozorovat už teď u Intelu, ala připravuje Xeony co budou mít PGA, tím defakto startuje zdroj post-GPU éry ještě dříve než se nám rozšířila. Protože PGA je v tom co může dělat mnohem lepší než GPU. Je ale univerzální a oproti asic implementaci stále těžce neefektivní, takže až na to přijde čas a bude zájem, oběvěj se nám asic obvody. Bude to efektivnější aby tam bylo tohle než třeba o další x86 jádro více.

Nejsem si ale jistej, jak moc se tohle dostane do rukou lidí. Mam takovej strach, že megakorporace i státy budou silnej HW chtít držet leda v kontrolovanejch datacentrech, a lidem se dále budou servírovat 4 jádra za hrozný ceny, protože z lidí se čím dál víc stává jen konzumní ovce, ala časem jim bude vnuceno že budou mít v rukou defakto jem přijímače, vše poběží vzdáleně a bude se to počítat kdesi na serveru, protože neni v zájmu díktátora aby lidé měly schopnej HW v rukou, naopak, lidi musej bejt závislý na systému a nemít vlastní alternativy. Jen sivezměte ten rozdíl dnes byť jen v x86. Co má smrtelík doma? 4 jádro, ti movitější 6. Intel ale do serveůr servíruje i 15 jádra. Otočme knihu zpět, doba K8... doma jsi měl K8, což po OC byl nejrychlejší x86 na světě, a ty jsi to měl doma a hrál jsi na tom UT. Severové čipy byly to samé jen jich dam moblo na SMT boardech bejt více. On se totiž pokrok v rámci x86 zastavil hlavně v consumer hladině, ne obecně, obecně intel stále jede dopředu, ale už to neprodává lidem, a SW pro lidi an neni schopnej ty tunojádrový bestie využít.

Re: Povídání možné i nemožné o CPUčkách historie i budoucna

Napsal: sob 12. črc 2014, 15:04
od Hladis
Flankere jako mod bys nemel zakládat duplicitni temata, která tu jiz jsou. Takze si to spoj http://pctforum.tyden.cz/viewtopic.php?f=74&t=210712 nebo LOCK.

Re: Historie, budoucnost a hypoteticke scenare kolem CPU v c

Napsal: sob 12. črc 2014, 22:21
od flanker
téma jsem sloučil, snad to diskutující naleznou...

Havli: to byla strojovna a čučím, že to stále funguje. I těch 1 GB RAM :D... No já se o procáky začal zajíamt až relativně pozdě, takže moje nejstarší kousky ve sbírce jsou Pentia 4 a Athlony XP (k nim už ale nemám desky). Nejstarší funkční komplet je Pentium 4 Presscot a Athlon 64 s754.

Re: Historie, budoucnost a hypoteticke scenare kolem CPU v c

Napsal: pon 14. črc 2014, 16:09
od havli
Tyhle stare stroje maji spolehlivost velmi dobrou... troufnu si tvrdit, ze jeste za 20 let pojedou. Tehdy se na cenu nehledelo, takze vsechno je tezce naddimenzovane a poctive udelane.

1GB je dost overkill, tyhle CPU to nemaji sanci vyuzit. Ale deska to umi, 4x 256MB moduly jsem sehnal levne... tak proc ne. :) Intel 440FX dokaze jako maximum adresovat prave 1GB. Uplne maximum pro Pentium Pro je tusim 8GB - to ale bylo jen na serverovych 4+ procesorovych deskach s chipsetem i450GX ... jenze to je nesehnatelna zalezitost.

Mam tady jeste desku s osekanou variantou - i450KX, ta umi zase "jen 1GB". Bohuzel deska ma nestandardni napajeni, takze ji nemuzu vyzkouset. Ale uz od pohledu je to masakr. Treba chipset se sklada z osmi obvodu, dneska je to jeden az dva maximalne. :twisted:

http://hw-museum.cz/view-mb.php?mbID=18
http://abload.de/img/hp_i450kx_vs_epoxajsij.jpg

Re: Povídání možné i nemožné o CPUčkách historie i budoucna

Napsal: stř 23. črc 2014, 13:09
od Eddward
DOC_ZENITH píše: Jeden a to bude konečně pokrok, bude komplet změna principu, umělej diamant pro mnohem pokorčilejší výrobu, či kvantová PC či memristory místo cache a RAM, atd, atd. Případně kombinace těchto faktorů. Do té doby nás čeká akorát stagnace, problém je že se neví jak dlouho, ta tu může bejt 5 let nebo třeba 20 let že.
Ano, tiez si myslim ze toto bude zrejme najblizsi solidny pokrok. Pravdepodobne kombinacia tychto faktorov ako pises.
Ocakavam ze sa nieco zacne diat kratko po roku 2020, dovtedy kremik takmer naisto vydrzi v nejakej podobe... memristory teoreticky mozu prist uz skor, uvidime
flanker píše:...No já se o procáky začal zajíamt až relativně pozdě, takže moje nejstarší kousky ve sbírce jsou Pentia 4 a Athlony XP (k nim už ale nemám desky). Nejstarší funkční komplet je Pentium 4 Presscot a Athlon 64 s754.
heh, ja som si myslel ze mas aj nieco starsie :)
ja mam napriklad stary dobry Pentium 133Mhz, Socket 7
aktualne foto, cerstvo vybratny z dosky :D :
Obrázek

moze mat ten CPU dnes nejaku hodnotu ? :D
samozrejme mam k tomu aj dosku, 32MB ram, nejaku grafiku 4MB, zvukovku... v podstate komplet PC, ktore islo naposledy asi pred 10 rokmi :)
Windows 98 bolo posledne co na tom ficalo.

Re: Historie, budoucnost a hypoteticke scenare kolem CPU v c

Napsal: stř 23. črc 2014, 14:25
od oneb1t
spis ne tehle procesoru je stale jeste hromada :)

Re: Historie, budoucnost a hypoteticke scenare kolem CPU v c

Napsal: sob 30. srp 2014, 13:34
od havli
Jen takova zajimavost - jak rostl vykon CPU v minulosti a jak roste dnes.

Pentium Pro 200/256k ... 1.11.1995 - $1125
Athlon 600 ................ 29.11.1999 - $615

Athlon je o 4 roky novejsi a ma ctyrnasobny vykon. A to ani neni nejvyssi verze - maximum bylo 750 MHz (za $799).

Core i7 3960X ............ 14.11.2011 - $999
Core i7 5960X ............ 29.8.2014 - $999

Dneska je za 3 roky narust vykonu 30%.

ObrázekObrázek

Re: Historie, budoucnost a hypoteticke scenare kolem CPU v c

Napsal: sob 30. srp 2014, 13:39
od DOC_ZENITH
Chtělo by to odseparovat jak za poslední roky rostl výkon u AMD, hned by jsme viděli kde je ta brzda trhu. :P

Re: Historie, budoucnost a hypoteticke scenare kolem CPU v c

Napsal: sob 30. srp 2014, 14:14
od havli
Njn, co se da delat.
Btw. je v tom grafu dobre videt, jak extremne povedena byla P6 architektura. Pentium Pro az do roku 1997 (uvedeni PII) drtilo s prehledem vsechno. A i nektere pozdejsi kousky - Cyrix MII, K6-2 - si dava jako nic... ikdyz jsou o 50% rychleji taktovane. O dual-CPU ani nemluvim. :twisted:

Docela se nabizi analogie Nehalem vs cokoliv od AMD. Chtelo by to dalsi K7, ale zatim to moc nevypada.

Re: Historie, budoucnost a hypoteticke scenare kolem CPU v c

Napsal: sob 30. srp 2014, 14:31
od DOC_ZENITH
V FPU náročnejch výpočtech P6 drtila, resp když byla mladá, K7 jí v tomhle ohledu dorovnala + měla 3D-now což ve své době díky existenci už od K6 byla pro hry relevantní, narozdíl od SSE které nikdo nepoužíval. K7 výkon v FPU dorovnala a celkově byla faster díky 2x rychlejší FSB. Výkon v FPU se AMd a Intel tolik nelyšil celou dobu co AMD vycházela z K7 a Intel vycházel z P6, ala až do doby souboje Core2 vs Phenom II.

Problém je že Nehalem přinesl další razantní výkonnostní nárůst v tomhle ohledu a na něj již AMD neodpovědělo protože FX naopak přinsel pokles, je to vysokofrekvenční architektura neefektivní architektura s latentní write-trough cache a dlouhou pipeline, netburst made by AMD. Intelu tehdy trvalo 6 let než uznal že tudy cesta nevede (ačkoliv měl stále P6 kteá byla lepší tlačil netbrust v naději že se časem povede a že se pro to bude optimalizovat SW, nestalo se ani jedno ani druhý), a u AMD to vypadá obdobně, jen doufat že po těch 6 letech vytahnou něco solidního a ne další fail protože jejich současné ekonomické a vývojové síly jsou bohužel oproti Intelu někde jinde a jsou někde jinde i oproti AMD v jejich silnejch letech.

AMD ale neni jediné, koukni co spolykala VIA a nic z toho nepředvedli, Nano ala po x letech dokončenej a modernizovanej návrh Cyrixu MIII, ala původně Joshua core co nakonec nikdo nevydal protože bylo neekonomické a místo něj se vydal low end od IDT, to jim trvalo hmm... 7-8 let? A od té doby jej nedovedli sami nikam dál posunout, jen změnit výrobní technologie a přidat počet jader na package ale ňákej další vývoj ten tam, a uplynulo dalších 6 let že...

Re: Historie, budoucnost a hypoteticke scenare kolem CPU v c

Napsal: ned 31. srp 2014, 14:14
od flanker
Athlon 600? To už ani envím, kam to spadalo....?

Re: Historie, budoucnost a hypoteticke scenare kolem CPU v c

Napsal: ned 31. srp 2014, 16:33
od DOC_ZENITH
Pokud to byl Slotovej Athlon kor s ňákou rychlejší cache tak jej nenech zapadnout nebylo jich moc a nejsou úplně bezcenný.

Re: Historie, budoucnost a hypoteticke scenare kolem CPU v c

Napsal: ned 31. srp 2014, 17:19
od havli
Prvni Athlony se davaly do Slotu A. Slot je podobny, jako slot 1 pro PII/III, ale ma obracene klicovani, takze desky mezi sebou nejsou po mechanicke strance kompatibilni, elektricky samozrejme taky ne. Dohromady jsou tri generace Athlonu.

1. 500 - 700 MHz, 250nm vyroba, 512KB externi L2 cache na polovicni rychlosti. [K7, Q2-Q3 1999]
2. 550 - 1000 MHz, 180nm vyroba, 512KB externi L2 cache na polovicni rychlosti do 700MHz (vcetne). 2/5 rychlost pro modely 750, 800, 850. A nakonec 1/3 rychlost pro modely 900, 950 a 1000 MHz. [K75, Q4 1999 - Q1 2000]
3. 600 - 1400 MHz, 180 nm vyroba, 256KB integrovane L2 cache bezici na plne rychlosti CPU. [Thunderbird, Q2 2000 - Q2 2001]

Vsechny typy s externi cache existuji jen v provedeni do Slotu A a pouzivaji FSB 200 MHz (DDR). Thunderbird pak existuje jak do Slotu A (600 - 1000 MHz) s FSB 200, tak i modernejsi Socket A, kde od 1 GHz vys se delaly varianty s FSB 200 i 266 MHz.

Slot A kusy jsou dneska dost vzacne, protoze byly tehdy dost drahe a moc se nerozsirily, proto byly pomerne zahy nahrazeny levnejsimi Socket A kusy. Tech se dodnes vsude vali mraky. Taky desky na Slot A jsou docela problem - hlavne ve vyberu chipsetu. Jsou totiz jen dva - AMD-750 a VIA KX133. AMD-750 umi jen 100MHz SDRAM a AGP 2x, takze trochu limituje vykon a nepodporuje novejsi grafiky. KX133 sice umi PC133 SDRAM i AGP 4x, ale je to proste VIA. :twisted:

Re: Historie, budoucnost a hypoteticke scenare kolem CPU v c

Napsal: čtv 18. zář 2014, 15:35
od del42sa
v návaznosti na první post na této stránce, komunikace jednoho inženýra, který pracoval na CMT řešení u AMD i Intelu, Andy Krazy Glew. ( blog http://blog.andy.glew.ca/ )

zajímavé poznatky: K10 už měla být CMT jako Bulldozer. Buldozer měl původně umět speculative multithreading s write-back cache, který umožňuje sdílet exekuční jednotky pro single thread.
So far as I can tell, Barcelona is a K8 warmed over.

There were several K10s. While I wanted to work on low power when I went
to AMD, I was hired to consult on low power and do high end CPU, since
the low power project was already rolling and did not need a new chef.
The first K10 that I knew at AMD was a low power part. When that was
cancelled I was sent off on my lonesome, then wth Mike Haertel, to work
on a flagship, out-of-order, aggressive processor, while the original
low power team did something else. When that other low-power project was
cancelled, that team came over to the nascent K10 that I was working on.
My K10 was MCMT, plus a few other things. I had actually had to
promise Fred Weber that I would NOT do anything advanced for this K10 -
no SpMT, just MCMT. But when the other guys came on board, I thought
this meant that I could leave the easy stuff for them, while I tried to
figure out how to do SpMT and/or any other way of using MCMT to speed up
single threads. Part of my motivation was that I had just attended ISCA
2003 in San Diego, where several of outstanding problems in big machines
had been solved, and I was scared that Intel would come out with
something if we did not.
BRIEF:

AMD's Bulldozer is an MCMT (MultiCluster MultiThreaded)
microarchitecture. That's my baby!

DETAIL:

Thursday was both a very good day and a very bad day for me. Good,
because my MCMT ideas finally seem to be going into a product. Bad,
because I ended up driving 4 hours from where I work with IV in the
Seattle area back to Portland, to my wife who was taken to a hospital
emergency room. The latter is personal. The former is, well, personal
too, but also professional.

I can't express how good it feels to see MCMT become a product. It's
been public for years, but it gets no respect until it is in a product.
It would have been better if I had stayed at Intel to see it through.
I know that I won't get any credit for it. (Except from some of the guys
who were at AMD at the time.) But it feels good nevertheless.

The only bad thing is that some guys I know at AMD say that Bulldozer is
not really all that great a product, but is shipping just because AMD
needs a model refresh. "Sometimes you just gotta ship what you got." If
this is so, and if I deserve any credit for CMT, then I also deserve
some of the blame. Although it might have been different, better, if I
had stayed.


I came up with MCMT in 1996-2000 while at the University of Wisconsin.
It became public via presentations.

I brought MCMT back to Intel in 2000, and to AMD in 2002.

I was beginning to despair of MCMT ever seeing the light of day. I
thought that when I left AMD in 2004, the MCMT ideas may have left with
me. Apparently not. I must admit that I am surprised to see that the
concept endured so many years - 5+ years after I left, 7+ years to
market. Apparently they didn't have any better ideas.

True, there were rumors. For example, Chuck Moore presented a slide
with Multicluster Multithreading on it to analysts in 2004 or 2005. But
things went quiet. There were several patents filed, with diagrams that
looked very much like the ones I drew for the K10 proposal. But, one
often sees patent applications for cancelled projects.

Of course, AMD has undoubtedly changed and evolved MCMT in many ways
since I first proposed it to them. For example, I called the set of an
integer scheduler, integer execution units, and an L1 data cache a
"cluster", and the whole thing, consisting of shared front end, shared
FP, and 2 or more clusters, a processor core.
Apparently AMD is calling
my clusters their cores, and my core their cluster. It has been
suggested that this change of terminology is motivated by marketing, so
that they can say they have twice as many cores.


My original motivation for MCMT was to work around some of the
limitations of Hyperthreading on Willamette. E.g. Willamette had a very
small L0 data cache, 4K in some of the internal proposals, although it
shipped at 8K. Two threads sharing such a tiny L0 data cache thrash.
Indeed, this is one of the reasons why hyperthreading is disabled on
many systems, including many current Nhm based machines with much larger
closest-in caches.


At the time, the small L0s were a given. You couldn't build a
Willamette style "fireball" high frequency machine, and have a much
bigger cache, and still preserve the same small cache latency.

To avoid threads thrashing each other, I wanted to give each thread
their own L0. But, you can't do so, and still keep sharing the
execution units and scheduler - you can't just build a 2X larger array,
or put two arrays side by side, and expect to have the same latency.

Wires. Therefore, I had to replicate the execution units, and enough of
the scheduler so that the "critical loop" of Scheduler->Execution->Data
Cache was all isolated from the other thread/cluster. Hence, the form
of multi-cluster multi-threading you see in Bulldozer.


True, there are differences, and I am sure more will become evident as
more Bulldozer information becomes public. For example, although I came
up with MCMT to make Willamette-style threading faster, I have always
wanted to put SpMT, Speculative Multithreading, on such a substrate.

SpMT has potential to speed up a single thread of execution, by
splitting it up into separate threads and running the separate threads
on different clusters, whereas Willamette-style hyperthreading, and
Bulldizer-style MCMT (apparently), only speed up workloads that have
existing independent threads.
I still want to build SpMT. My work at
Wisconsin showed that SpMT on a Willamette substrate was constrained by
Willamette's poor threading microarchitecture, so naturally I had to
first create the best explicit threading microarchitecture I could, and
then run SpT on top of it.

If I received arows in my back for MCMT, I received 10 times as many
arrows for SpMT. And yet still I have hope for it. Unfortunately, I am
not currently working on SpMT. Haitham Akkary, the father of DMT,
continues the work.

I also tried, and still continue, to explore other ways of speeding up
single threads using multiple clusters.

Although I remain an advocate of SpMT, I have always recognized the
value of MCMT as an explicit threaded microarchitecture.

Perhaps I should say here that my MCMT had a significant difference from
clustering in, say, the Alpha 21264,
http://www.hotchips.org/archives/hc10/2 ... 10.1.1.pdf
Those clusters bypass to each other: there is a fast bypass within a
cluster, and a slightly slower (+1 cycle) bypass of results between
clusters. The clusters are execution units only, and share the data
cache. This bypassing makes it easy (or at least easier) to spread a
single thread across both clusters. My MCMT clusters, on the other
hand, do NOT bypass to each other. This motivates separate threads per
cluster, whether explicit or implicit.


I have a whole taxonomy of different sorts of clustering:
* fast vs slow bypass clusters
* fully bypassed vs. partially bypassed
* mechanisms to reduce bypassing
* physical layout of clusters
* bit interleaved datapaths
* datapaths flowing in opposite directions,
with bypassing where they touch
* what's in the cluster
* execute only
* execute + data cache
* schedule + execute + data cache
* renamer + schedule + execute + datacache
...
* what gets shared between clusters
* front-end
* renamer?
* data-cache - L0? L1? L2?
* TLBs...
* MSHRs...
* FP...

Anyway: if it has an L0 or L1 data cache in the cluster, with or
without the scheduler, it's my MCMT. If no cache in the cluster, not
mine (although I have enumerated many such possibilities).


Motivated by my work to use MCMT to speed up single threads, I often
propose a shared L2 instruction scheduler, to load balance between the
clusters dynamically. Although I admit that I only really figured out
how to do that properly after I left AMD, and before I joined Intel.

How to do this is part of the Multi-star microarchitecture, M*, that is
my next step beyond MCMT.

Also, although it is natural to have a single (explicit) thread per
cluster in MCMT, I have also proposed allowing two threads per cluster.
Mainly motivated by SpMT: I could fork to a "runt thread" running in
tghe same cluster, and then migrate the run thread to a different
cluster. Intra-cluster forking is faster than inter-cluster forkng, and
does not disturb the parent thread.

But, if you are not doing SpMT, there is much less motivation for
multiple threads per cluster. I would not want to do that unless I was
also trying to build a time-switched lightweight threading system.
Which, as you can imagine if you know me, I have also proposed. In
fact, I hope to go to the SC'09 Workshop on that topic.

I will be quite interested to see whether Bulldozer's cluster-private L1
caches (in AMD's swapped terminology, core-private L1 caches) are write
through or write-back. Willamette's L0 was write-through. I leaned
towards write-back, because my goal was to isolate clusters from each
other, to reduce thrashing. Also, because write-back lends itself
better to a speculative versionong cache, useful for SpMT.


With Willamette as background, I leaned towards a relatively small, L0,
cache in the cluster. Also, such a small L0 can often be pitch-matched
with the cluster execution unit datapath. A big L1, such as Bulldozer
seems to have, nearly always has to lie out of the datapath, and
requires wire turns. Wire turns waste area. I have, from time to time,
proposed putting the alignment muxes and barrel shifters in the wire
turn area. I'm surprised that a large cluster L1 makes sense, but that's
the sort of thing that you can only really tell from layout.

Some posters have been surprised by sharing the FP. Of course, AMD's K7
design, with separate clusters for integer and FP, was already half-way
there. They only had to double the integer cluster. It would have been
harder for Intel to go MCMT, since the P6 family had shared integer and
FP. Willamette might have been easier to go MCMT, since it had separate FP.

Anyway... of course, for FP threads you might like to have
thread-private FP. But, in some ways, it is the advent of expensve FP,
like Bulldozer's 2 sets of 128 bit, 4x32 bit, FMAs, that justify integer
MCMT: the FP is so big that the overhead of replicating the integer
cluster, including the OOO logic, is a drop in the bucket.
You'd like to have per-cluster-thread FP, but such big FP workloads are
often so memory intensive that they thrash the shared-between-clusters
L2 cache: threading may be disabled anyways. As it is, you get good
integer threads via MCMT, and you get 1 integer thread and 1 FP thread.

Two FP threads may have some slowdown, although, again, if memory
intensive they may be blocking on memory, and hence allowing the other
FP thread t use the FP. But two purely computational FP threads will
almost undoubtedly block, unless the schedulers are piss-poor and can't
use all of the FP for a single thread (e.g. by being too small).

I certainly want to explore possibilities such as SpMT and other single
thread speedups. But I know that you can't build all the neat ideas in
one project. Apparently MCMT by itself was enough for AMD Bulldozer.
(Actually, I am sure that there are other new ideas in Bulldozer. Just
apparently not SpMT or spreading a single thread across clusters.) Look
at the time-lag: 10-15 years from when I came up with MCMT in
Wisconsin, 1996-2000. It is now 7-5 years from when I was at AMD,
2002-2004, and it will be another 2 years or so before Bulldozer is a
real force in the marketplace.

I don't expect to get any credit for MCMT. In fact, I'm sure I'm going
to get shit for this post. I don't care. I know. The people who were
there, who saw my presentations and read my proposals, know. But, e.g.
Chuck Moore wasn't there at start; he came in later. Even Mike Haertel,
my usual collaborator, wasn't there; he was hired in later, although
before Chuck. Besides, Mike Haertel thinks that MCMT is obvious.
That's cool, although I ask: if MCMT is obvious, then why isn't Intel
doing it? Companies like Intel and AMD need idea generating people like
me about once every 10 years. In between, they don't need new ideas.
They need new incremental improvements of existing ideas.

Anyway... It's cool to see MCMT becoming real. It gives me hope that my
follow-on to MCMT, M* may still, eventually, also become real.
celá komunikace zde

Re: Historie, budoucnost a hypoteticke scenare kolem CPU v c

Napsal: čtv 18. zář 2014, 21:29
od flanker
vypadá, že se to všechno o jednu generaci posouvá. Ona první K10 65nm byla sama o sobě dobrá, technologicky znovu pokročilý CPU, ale jak tehdy psal OBR, chyba AMD byla v tom, že uvedly rovnou čtyřjádra, kdy na úkor spotřeby byly celkem konzervativní takty a bylo to v době, kdy drtivá většina apliakcí profitovala z jednoho až dvou vláken. Kdyby tehdy uvedly prvně dvoujádrové Ageny, docela by to zatopilo procákům Core Duo..(takt na takt o něco horší, ale i dvoujádra AMD by byla schopna mít okolo 2.7-3GHz taktu v defaultu)