Gå til innhold

Fusion tar form


Anbefalte innlegg

Hva om de ga muligheten for "Dedikert GPU hyperminne" med egne DDR2/3 slotter for GPU på samme måte som man får dedikert minne for flere CPU slotter på samme HK?

9218025[/snapback]

Det er en mulighet. Men det er noen problemer:

- Kostnad. Hovedkortene vil bli dyre på grunn av mange lag.

- Effektivitet. Man kunne like gjerne gitt CPUen 3 minnekanaler siden det vil gi en mer dynamisk fordeling av båndbredden ettersom det er CPU eller GPU som trenger mest.

- Minnesslots setter begrensninger på hastigheten grunnet elektriske forstyrrelser i selve kontaktpunktene. Særlig når et vell av vanlige minnemoduler skal støttes. En måte å løse dette på er å lodde grafikkminnet på hovedkortet slik det gjøres på grafikkort. Da får man ingen mulighet for oppgraderinger av grafikkminnet men man får i hvert fall god hastighet på det. Men så var det det med kostnad igjen ;)

9218347[/snapback]

Gode poenger her, men jeg ser noen flere utfordringer ved å implementere grafikkminne, enten rundt sokkelen som påloddede chiper, eller som moduler:

 

 

På dedikerte grafikkort er det som nevnt en fordel at chipene er loddet direkte på kretskortet, siden man da unngår degradering av signalene. En annen fordel er at chipene kan plasseres i en "hestesko" rundt GPU. Det gjør det lettere å holde kretslengdene korte, og mest mulig like mellom GPU og alle chipene, noe som er viktig for å kunne ivareta stabilitet på de høye dataratene vi ser av GDDR3 og GDDR4. Dette er ikke like lett å oppnå mellom sokkelen og en rettlinjet modul/slot, fordi vinkelen ut fra sokkelen blir mindre, og avstanden til endene av sloten blir lang.

 

Chipenes plassering på grafikkort, og det at de kan spres utover en større vinkel enn ved modul-konseptet, gjør det også lettere å oppnå høy bussbredde fordi det blir plass til flere pinner. På grafikkort er det også færre ting å ta hensyn til, dermed tillater det mer spesialisering. Vanlig DDRx-chiper har en kolonnebredde som er ugunstig lav mtp å oppnå høyest mulig båndbredde, og det skal nok noe til for å kunne unngå det problemet helt, uansett om man gikk for grafikkminne som er direkte påloddet eller kommer i løse moduler. Rundt CPU-sokkelen er det jo allerede et utall andre kretser, derfor måtte nok hovedkortene fått flere lag (som nevnt). I området rundt CPU-sokkelen er det jo rimelig trangt om plassen fra før av, og jeg ser også for meg at det ville være vanskelig å skjerme databussen for støy fra prosessorens spenningsregulatorer o.l.

 

Grafikkminne bruker som kjent et point-to-point-grensesnitt, hvor ingen chiper må dele på samme databussen, men bruker direkte kobling til GPU. Paralelle grensesnitt reduserer skalerbarheten, men en P-to-P-implementasjon ville jo la seg gjøre selv om man valgte å benytte sloter/moduler. Man ville riktignok ikke kunne legge til ekstra moduler, men det ville gå å oppgradere til en større modul hvis ønskelig.

 

Ellers er det jo interessant at K10 innfører to uavhengige adresse/kommando-enheter, som kan behandle hver sin minnekanal om gangen. Kanskje vi etterhvert får se en løsning hvor en kanal er dedikert til IGP?

 

 

Mye av dette har vi jo drøftet før, Theo:

 

Diskusjon rundt grafikkminnets implementasjon

Lenke til kommentar
Videoannonse
Annonse

Quintero:

Sant at vi har drøftet lignende ting før, men da fra et annet utgangspunkt med modulært minne på GFX PCB.

 

Her var det utfra at GPU vil bruke hypermemory teknologi som setter det i et annet lys :)

 

Det som ser ut som den beste løsningen er dog at man får 3 minnekanaler som benyttes dynamisk slik Simen1 har skissert.

 

Men uansett så vil hypermemory teknikker være en bremsekloss på ytelsen, så dette blir vel forbeholdt inntil lavt-medium sjiktet.

Muligens kan det kombineres med noe dedikert grafikkminne (64-128MB) rundt CPU sokkelen lengst mulig vekk (ned til høyre) fra spenningsregulatorene. Der kan de også kanskje plasseres på undersiden av hovedkortet om det skulle være fysiske plassutfordringer for selve chipp'ene.

 

Integrert dedikert GPU minne i selve CPU ser jeg ikke som noe løsning i nær fremtid, det vil være nok av varmegenererende komponenter i en slik Fusion CPU fra før av, samt at dagens GPU minne er nokså store chip'er og må vel utvikles betraktelig for å plasseres i en CPU.

 

Vil type L3 cache egne seg som GPU minne? Evt. vil en GPU kunne dra nytte av en cache mellom seg selv og hypermemory?

 

 

 

Fudzilla klarer jeg ikke ta alvorlig. Bare navnet uttrykker useriøsitet og innholdet er ikke bedre.

Endret av Theo343
Lenke til kommentar
Det som ser ut som den beste løsningen er dog at man får 3 minnekanaler som benyttes dynamisk slik Simen1 har skissert.

For å være litt pessimistisk så tror jeg de første Fusion-løsningene vil bruke 2 minnekanaler med dynamisk lastbalansering, men man skal aldri si aldri. Kanskje det dukker opp løsninger med både 3 og 4 minnekanaler om det skulle trenge seg frem. Integrert GPU er en ting som presser i den retninga mens stadig høyere klokkehastigheter og problemer med å oppnå høye hastigheter med 2 moduler per kanal kan tvinge frem løsninger med maks en modul per kanal men med flere kanaler for å få mer kapasitet. Dette har selvsagt en del ulemper som pris på hovedkort og CPU, men det kan altså hende det presser seg frem. Når det gjelder det "udigitale" antallet 3 så har Nvidia brukt det i geforce 8800GTX der man får mengde minne som går opp i tallet 3 og en bussbredde som går opp i tallet 3.

 

Hvis det blir så mye som 3 eller 4 minnekanaler så blir det sikkert en egen sokkel for disse løsningene og siktet inn mot high end og servere. Low end desktop og bærbare vil sikkert beholde 2 minnekanaler og en mindre og billigere sokkel.

 

Angående effekt så utvikler minnebrikker svært lite varme. De mest varmeproduserende jeg har lest om hittil utviklet 1,9W per brikke (geforce 7800GTX 512MB).

 

Integrert dedikert GPU minne i selve CPU ser jeg ikke som noe løsning i nær fremtid, det vil være nok av varmegenererende komponenter i en slik Fusion CPU fra før av, samt at dagens GPU minne er nokså store chip'er og må vel utvikles betraktelig for å plasseres i en CPU.

Jeg ser det som en realistisk løsning, men de må nok trikse litt for å få det til. Blant annet så egner ikke CPU-wafere seg for minne og omvendt. Dermed må de nok produsere minnet og CPU i separate brikker. Det vil gi en MCM (Multi chip module) lignende det Core 2 Quad er. Sokkelen og lokket må sikkert bli større for å få mer fysisk plass men det trenger ikke å bli så voldsomt stort heller. F.eks noe lignende ATI Radeon X1600 mobile

mobility_radeon_x1600_csp.jpg

 

På denne måten kan det lille kretskortet ha f.eks 10-12 lag (dyrt!) mens det store hovedkortet spares for å ha mer enn 4 lag. Det gjør hovedkortet billig. Siden hovedkort er mye større enn det lille kretskortet så vil ikke prisen av det lille kretskortet utgjøre noe særlig sammenlignet med hva det hadde kostet om grafikkminnet lå på hovedkortet. Med tanke på hvor stor plass kjølere tar i dag likevel så skal det være plass nok i massevis å ta av for å gjøre plass til en litt større CPU. Samtidig sparer man en haug med pinner til hovedkortet (noe som koster penger og minneytelse) Jeg fant ikke mål på det grafikkortet som er avbildet over men regner med det er ca like stor eller litt mindre enn Pentium Pro var i sin tid.

 

thumb220x193-images657603.jpg

 

Apropos den så hadde den en cache-løsning som minner litt om det jeg prater om nå. Se på bildet. Brikken til høyre er en egen brikke med L2 cache. Mellom de to tror jeg det går en dedikert cacheminnebuss.

 

Vil type L3 cache egne seg som GPU minne? Evt. vil en GPU kunne dra nytte av en cache mellom seg selv og hypermemory?

9239211[/snapback]

L3 egner seg dårlig av to grunner: Kapasitet (noen få MB) og pris per MB.

Lenke til kommentar

@ Theo343: Ok, jeg ser at ikke alt jeg skrev passet inn i tankegangen deres.

 

Men etter å ha lest grundigere igjennom har jeg noen andre kommentarer. Håper jeg treffer bedre nå :)

 

Og vil det si at hvis man har et spill som utnytter flere kjerner så vil det kvele GPU biten? Altså løsningen blir mot sin hensikt?

9218459[/snapback]

Tja, jo mer minnebåndbredde som brukes av CPU-kjernene jo mindre blir til overs til den integrerte GPU-delen.
Vil bare utdype dette litt. Jeg tror ikke det har så veldig mye med antallet tråder/kjerner å gjøre. En annen ting er at minne-forespørsler fra alle enheter vil forholde seg til de samme køene i kontrolleren(e) i dette eksemplet, så med mindre man prioriterer CPU fremfor GPU via spesifikke instrukser (load-reordering) så vil ikke systemet tillate at en enhet blir "kvalt" av de andre. Selvsagt vil de på en måte stjele ressurser fra hverandre, men i utgangspunktet vil det nok ikke bli en relativ skjevhet mellom dataflyten til hver enhet og antallet forespørsler fra hver enhet. Den enheten som spør etter flest data i en gitt periode vil jo "trekke flest kølapper", og dermed gjøre krav på den største andelen av den totale minnetrafikken. Så dette ville altså bli fortløpende regulert etter behov. Uten for mye omorganisering av køene så vil nok også loaded latency bli temmelig jevnt fordelt (men mtp å spare flest mulig interne minneforsinkelser er ikke dette nødvendigvis den beste måten å løse det på).

 

Men jeg mener ikke et vil virke mot sin hensikt. Tvert i mot så vil f.eks tre delte minnekanaler gi bedre ytelse i alle applikasjoner enn to minnekanaler som er dedikert til CPU-bruk pluss en minnekanal som er dedikert GPU-bruk. Forutsatt at vi snakker om sammenlignbare minnekanaler og mengde minne.

 

Ressursutnyttelsen vil bli dynamisk regulert i stedet for å være fast inndelt.

9219154[/snapback]

Jeg skjønner gevinsten av dynamisk fordeling, men er ikke overbevist om at tre delte kanaler alltid vil være det beste (ihvertfall ikke i forhold til hvordan jeg ser for meg at AMD vil løse dette). Her er det nok et poeng at AMD nå vil gå over til to uavhengige kanaler/kontrollere, som dermed kan operere i hver sin retning, samtidig. Hvis GPU skulle fått en dedikert kanal så hadde nok den også fått en dedikert kontroller, og mtp at ihvertfall CPU kan antas å få mer enn nok båndbredde fra dualchannel DDR2 / DDR3 så tror jeg nok det her kan være snakk om en overveining. Spørsmålet blir da om dynamisk fordeling mellom tre kanaler blir å foretrekke fremfor at enhetene blir uforstyrret av hverandre. For CPU sin del så tror jeg at dedikerte kanaler blir å foretrekke, fordi forsinkelsen nok blir kortere, og fordi den ekstra båndbredden fra en eventuell tredje kanal nok vil være overflødig. Høyere båndbredde vil som nevnt bidra til redusert kølengde, men lave interne forsinkelser og større "råderett" over hvilken retning trafikken går i tror jeg kan bli et større pluss ihvertfall for CPU.

 

Edit: ...men på den andre siden, i en situasjon hvor GPU bare kommer med noen få forespørsler (til et delt system) så vil vel ikke CPU bli særlig forstyrret av det heller. Tror vi her snakker om små nyanser i alle tilfeller...

Endret av Quintero
Lenke til kommentar

Simen1:

Helt klart at det nok ville vært ugunsting å fordyre hovedkortet med GDDR kretser osv.

 

Større CPU sokler må nok til enten vi vil ha det eller ei, 2w til eller fra pr. minnechip er nok ikke så mye ift. hva en GPU chip vil generere av tilleggsvarme på CPU sokkelen.

 

Ift. til varme er jo også en større overflate et pluss, det vil være enklere å kjøle en større overflate som gir større kontaktflate mot kjøleløsninger. Komponentene som CPU, GPU osv vil nok fortsette å krympes, mens sokkelen vil vokse. Utfordringen blir vel å lage gode nok IHS implementasjoner for såpass store/komplekse MCM løsninger.

 

Store sokler finnes det mange av fra før. Du har nevnt en og eks. Suns UltraSPARC kodenavn"Niagra", 8core*4threads i 2004 var heller ikke liten.

Klikk for å se/fjerne innholdet nedenfor
niagara_chip_small_pic.jpg

Klikk for å se/fjerne innholdet nedenfor
niagara_fireball_tm_small.jpg

IBM Power5 8 kjerne i 2004 var jo heller ikke en lite tass. "Din favorittskive?"

Klikk for å se/fjerne innholdet nedenfor
ibm_power_5.jpg

Så det kan bli spennende å se hva AMD finner på med Fusion sokler fremover :)

 

 

En kombinasjon av integrert minne via større CPU sokkel og større MCM design kombinert med Hypermemory virker å være en realistisk tilnærmelse. Så får man se hva de gjør ift. hypermemory implementasjonen.

 

Det som er mest spennende som jeg ser for meg er:

"Skal oppgradere til den nye K13 nå, den passer på sokkelen jeg har fra før men pokkern for en rå integrert grafikkløsning den har".

 

eller.

 

"Tror jeg bytter ut den billige K12 jeg har nå og tar den tredje dyreste i K12 familien, den har jo også helt rå grafikk".

Endret av Theo343
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...