Gå til innhold

FSB og minne hastighet


BaronDavid

Anbefalte innlegg

Videoannonse
Annonse

FSB er bindeleddet mellom minnekontroller og prosessor, og den består av én kanal. I et system som kan kjøre minnet i dualchannel må FSB overføre data fra begge minnekanalene, som leser og skriver data i paralell. Derfor kan man si at 1066 "MHz" FSB tilsvarer overføringshastigheten til 2x533 MHz i dualchannel. Det er rett og slett snakk om forskjellige busser, og FSB og minnebuss kjører ikke nødvendigvis på samme hastighet (såkalt asynk-modus).

Lenke til kommentar

Den ekstra båndbredden til ram. (Det som er overskudd i forhold til FSB) kan brukes til minnetrafikk mellom minnet og andre ting enn CPU. F.eks mellom minnet og et integrert skjermkort.

 

Bare for å få en viss oversikt over båndbreddene:

PC3200 400MHz MHz: 3,200 GB/s

PC4300 533MHz MHz: 4,267 GB/s

PC5300 667MHz MHz: 5,333 GB/s

PC6400 800MHz MHz: 6,400 GB/s

PC8500 1066MHz MHz: 8,533 GB/s

To minnekanaler gir det dobbelte.

 

Intels 800FSB: 6,400 GB/s

Intels 1066FSB: 8,533 GB/s

Dette deles mellom minnetrafikk og trafikk mellom CPU og resten av systemet, evt også mellom to kjerner hvis det finnes i systemet.

 

Dette er kun båndbredder. En ting som kompliserer ytelsebildet er responstiden til minnet. Dersom FSB og minnet ikke har lik hastighet så vil det komme en ekstra forsinkelse når signalene må vente i brikkesettet på at de stemmer over ens med hverandre før de sendes videre. Derfor er det noen tester som viser at f.eks to minnekanaler med DDR2-533 yter et lite hakk bedre enn to minnekanaler med DDR2-667 når man samtidig bruker 1066FSB.

 

Med dagens høye og stigende priser på minne ville jeg satset på DDR2-533 for kombinasjon med 1066FSB eller eventuellt DDR2-667 eller mer hvis jeg skulle overklokket. DDR2-667 er en fin kombinasjon med 1333FSB og DDR2-800 er en fin kombinasjon med 1600FSB.

Lenke til kommentar
En ting som kompliserer ytelsebildet er responstiden til minnet. Dersom FSB og minnet ikke har lik hastighet så vil det komme en ekstra forsinkelse når signalene må vente i brikkesettet på at de stemmer over ens med hverandre før de sendes videre. Derfor er det noen tester som viser at f.eks to minnekanaler med DDR2-533 yter et lite hakk bedre enn to minnekanaler med DDR2-667 når man samtidig bruker 1066FSB.

6942011[/snapback]

Noen tester viser det ja, men de fleste viser det motsatte. De interne minneforsinkelsene går ofte litt ned når man øker minneklokken, slik at det kompenserer for asynk-bufringen. Men den viktigste årsaken til at man tjener på asynk minne er trolig at Intels dualchannel ikke opererer fullstendig i paralell, ergo vil man se større gevinst av høy throughput pr minnekanal fordi FSB ikke blir noen flaskehals med mindre begge kanalene er aktive samtidig.

 

AMD organiserer dataene på en måte som gjør at overføringene er 100% paralelle, dvs at 8 kolonner alltid fordeles likt som 2x4 mellom kanalene. Intels kontrollere organiserer data slik at ikke begge kanalene er aktive hele tiden. Det er de kun når relaterte data er lagret i den "motsatte adressen" (dvs på den andre kanalen), men en kolonne-rekke "splittes" ikke mellom kanalene.

 

Selv om FSB er konstant på 1066, fortsetter ytelsen å øke i takt med minneklokken i de fleste tilfeller:

 

c2dddr2sk0.jpg

Endret av Quintero
Lenke til kommentar

Fin graf, Simen1 :thumbup:

 

Interessant å merke seg at det største spranget kommer ved økningen fra DDR2-800 til DDR2-1066. Da vil jo minnet kjøre helt synkront med FSB (merk: når kun den ene kanalen leses fra), og vil dermed unngå asynk-bufring. Det tar jeg som et sikkert tegn på at Intels dualchannel-metode er den viktigste årsaken til at asynk minne faktisk lønner seg. Hvis begge kanalene ble lest i paralell ville jo FSB bli en flaskehals uten like på DDR2-1066, ikke minst mtp at de interne forsinkelsene blir veldig bra kamuflert i dagens minneteknologier.

 

Men jeg skulle likt å visst hva som får Intel til å sverge til en metode som knapt lever opp til betegnelsen dualchannel - ihvertfall sammenlignet med AMDs løsning :hmm:

Endret av Quintero
Lenke til kommentar

Jeg la også merke til spranget mellom 800 og 1066, men legg merke til at det spranget er på 266MHz mens de andre sprangene er på bare 133MHz. Det er altså å forvente at ytelsen skal hoppe omtrent dobbelt så mye av det store spranget enn av de mindre sprangene.

 

Jeg endret litt på fremstillingsmåten. Nå har jeg minnehastigheten i MHz langs X-aksen. I tillegg har jeg lagt til noen trendkurver jeg syntes passet. (Fra øverst til høyre: lineær, geometrisk, geometrisk)

post-3851-1159274414_thumb.png

Lenke til kommentar

Det er jo et viktig poeng, men når det gjelder båndbredde-testene så er det fremdeles et større sprang fra 800 til 1066 enn fra 800 til 533. Så jeg synes fremdeles at grafene underbygger teorien om minneeffektiviteten, og hvordan kontrolleren arbeider.

 

At spill-testene viser motsatt tendens tyder vel heller på at gevinsten av raskere minne begynner å flate ut, dvs at resten av systemet ikke lenger har behov for den ekstra båndbredden.

 

Edit: Forskjellene i forsinkelser blir kunstig store fordi minnetimingene er 5-5-5 i alle tilfeller. Det har ikke nødvendigvis voldsom innvirkning på båndbredden, men grafen egner seg nok best til å demonstrere at man ikke taper noe på å kjøre minnet asynkront oppover.

Endret av Quintero
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å
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...