Geforce6600GT-serien er ligesom 6800, 6800GT og 6800Ultra mulighed for SLI i forbindelse med PCI-express. Jeg vil derfor gennemgå både PCI-express opbygning samt SLI's funktion.
PCI-express og SLI
PCI-e-interfacet er det nyeste kommunikationsslot til grafikkortet. PCI-e skal ikke forveksles med det gamle PCI der bruger en parallel løsning mod PCI-e's serielle. Den serielle løsning giver et mindre kompleks bundkort og grafikkort, men kræver mere af komponenterne.
PCI-e findes i flere forskellige løsninger og man snakker bl.a. og fysisk og elektrisk.
Fysisk findes PCI-e som 1x, 4x, 8x og 16x. 16x bruges altid til alle nuværende PCI-e-grafikkort. Og et 16x-slot kan sagtens huse 1x, 4x og 8x kort også.
Men selvom stikket fysisk er et 16x-slot kan det elektrisk være et 1x, 4x eller 8x slot. Det ses især på SLI-bundkort og vil muligvis ses mere i fremtiden.
Bl.a. skulle Via PT880pro have både AGP 8x og PCI-e til grafikkortet. Men selvom interfacet fysisk er et 16x kan det kun fungere som et 4x. Det samme gør sig gældende med SLI til bl.a. nForce4-SLI hvor de to stik enten er 16x+1x eller 8x+8x selvom de under begge omstædigheder er 16x fysisk.
PCI-e arbejder med 250MB/s per lane full duplex og da PCI-e16x generelt har 16lanes, betyder det at det kan arbejde med 16x250MB/s = 4GB/s. Full duplex betyder derudover at det kan overføre med denne hastighed begge veje på en gang.
AGP arbejder ved 8x med 2133MB/s half-duplex. Hvilket betyder at den kun kan overføre en vej af gangen.
Derfor giver PCI-e flere muligheder for at få bundkort og grafikkort til at spille mere sammen, hvilket også vil blive mere synligt i fremtiden med nye teknologier som turbo-cache, Extreme-cache og Hyper-memory.
Multigrafikchip-rendering
En chip giver god ydelse, men giver 2 chips så dobbelt ydelse? I så fald ville det være en måde både at spare penge på og få nogle meget hurtige grafikkort. Denne idé lever snart alle grafik-chip-producenter meget højt på og kan det lade sig gøre, vil det virkelig bære frugt. Problemet er bare at løsningen ikke er så enkelt igen. Oftest skal f.eks. 2 chips have hver deres RAM-lager. Det betyder, at RAM-mængden ikke er fælles, men delt op i to dele. 512MB på et grafikkort med 2 chips eller 2 grafikkort er reelt 2x256MB, hvor den teoretiske brugbare mængde kun er 256MB. Båndbredden er til gengæld den dobbelte.
Et andet problem er at de 2 chips skal arbejde sammen og det er meget svært at udnytte det fulde potentiale af 2 chips. Det svare lidt til at have 2 motorer til at trække en bil og regne med at få dobbelte antal hestekræfter ud af det.
SLI: nVIDIA har aldrig arbejdet særligt meget med flere chips på et grafikkort, men med overtagelsen af 3dfx fik de virkelig nogle dygtige folk ind fra dette område. 3dfx var netop kendt for deres SLI-løsning også kendt som Scan-Line-Interleaving. Metoden var simpel men ikke særlig effektiv da man bad hver chip om at tegne hver anden linie i en given opløsning. De enkelte chips blev nødt til at have næsten de samme oplysninger på deres ram, til gengæld arbejdede de enkelte chips meget effektivt indbyrdes og metoden var så simpel, at den kunne bruges i alle spil uden patches eller specialskrivning af spilkoden. Oprindeligt arbejdede disse løsninger sammen analogt, men i deres sidste modeller blev metoden digitaliseret og finpudset til højere hastigheder.
Ved overtagelsen af 3dfx sikrede nVIDIA sig nogle rigtig gode folk inde for dette område og arbejdede derefter videre på idéen med flere chips i samarbejde. nVIDIA brugte oven i købet den samme forkortelse stående for Scaleable-Link-Interface også kendt som SLI.
Forskellene fra det gamle 3dfx er dog fuldstændige og det eneste sammenlignelige er flere samarbejdende chips og forkortelsen for navnet. Metoden eller rettere metoderne har dog intet med det gamle 3dfx-navn at gøre.
Renderingsnavn | Metode | Grafikkort |
3dfx-SLI(Scan-Line-Interleaving) | Hver anden linie | 3dfx Voodoo2og5 |
AFR (Alternate-Frame-Rendering) | Hvert andet billed | ATi Rage Fury Maxx Geforce 6-series XGI Volari Duo* |
SFR (Split-Frame-Rendering) | 2 variable skærmhalvdele | Geforce 6-series |
AMR (ATi-Multi-Rendering) | Tiled-baseret. Små firkanter af skærmbilledet deles skiftevis mellem de enkelte chips | ATi R5xx-series, muligvis flere |
*XGI kalder det Bit-fluent, men det er generelt samme princip som AFR nVIDIA benytter sig altså af 2 teknikker kaldet AFR og SFR. Problemet med nVIDIAs metode er at spillet skal skrives direkte til netop en af metoderne for at fungere optimalt. Hvis ikke det bliver gjort og driveren ikke er parat til det, vil de enkelte chips ikke samarbejde og man vil kun opnå ydelse som en single-chip-løsning
AFR lader 2 grafikchips arbejde således, at de skiftevis arbejder med hver deres billede. Billed1 = chip1, Billed2 = Chip2, Billed3 = Chip1 osv.
Løsningen er meget simpel, og lader de enkelte chips arbejde forholdsvis uafhængigt af hinanden. De billeder de laver strømmer bare igennem som en højere framerate, men de kræver meget af rammene ligesom den gamle 3dfx-SLI-teknik.
SFR lader de enkelte chips arbejde mellem 2 halvdele af billedet. Øverste del tager chip1 sig af og nederste tager chip2 sig af. Når en af de enkelte chips får mere en 50% af arbejdet (selve den komplekse del af geomtriopbygning, shaderberegning osv.) flytter den arbejdet mellem sig ved at give mere end 50% af skærmbilledet til den mindst belastede chip.
Denne løsning er meget effektiv, men kræver et imponerende samarbejde mellem chipsne.
For at bruge nVIDIA-SLI kræver det i de fleste tilfælde et specielt bundkort, der er godkendt til SLI.
På nuværende tidpunkt er der:
nVIDIA nForce4-SLI.
nVIDIA nForce4-IE.
nVIDIA nForce4Pro.
Intel Tumwater.
Intel 945-/955-SLI
I 2 af tilfældene med de almindelige nForce4 bundkort skal der bruges løse PCI-E lanes. Det betyder at man skal have mulighed for at flytte rundt med sine lanes til grafikkortet.
Lanes beskriver hvor mange veje der går til et PCI-E stik. Der går f.eks. 16 lanes til et PCI-e x16 slot, 4 lanes til et x4 PCI-E slot osv.
Et nForce4 har kun 20 lanes i alt og da 16 af dem går til grafikslottet har man ikke nok til 2x16 (32lanes i alt) til 2 grafikkort. Derfor fjerner man 8 lanes ved det ene grafikslot og tilfører til det andet.
Billedet beviser også hvorfor det er muligt at køre SLI med et enkelt grafikkort som Gigabytes Dual6600GT. På sådan et grafikkort bruger chip 1 de første 8 lanes og chip 2 de sidste 8.
Fidusen er at man bare indstiller SLI-opsætningen til single grafikkort og så detektere bundkortet det som om der sidder 2 grafikkort i maskinen, selvom det kun er et med 2 chips.
Dette system forsvinder muligvis meget snart, da over 32 lanes på bundkort er inde for rækkevidde inden for det næste års tid.