Hoofdcategorieën
Device Settings

ATi R300 en nVidia NV30 technisch vergeleken

Door Ralph Smeets, dinsdag 29 oktober 2002 18:10
Bron: Beyond 3D, submitter: Robino, views: 859

Met de introductie van de Radeon 9700 heeft ATi een belangrijke slag gewonnen in de oorlog met nVidia. Maar het einde van deze oorlog is nog niet in zicht. nVidia werkt in het geheim aan een nieuw wapen dat onder de codenaam NV30 door het leven gaat. Volgens de laatste berichten van de geheime dienst DigitalTimes stuurt nVidia de NV30 nog voor het einde van november het slagveld op. Beyond 3D heeft een aantal blueprints van de NV30 en Radeon 9700 en de gegevens over het toekomstige slagveld, DirectX 9, weten te bemachtigen en een uitgebreide analyse on-line gegooid.

Microsoft heeft onlangs de nieuwste beta specificaties voor DirectX 9 opgesteld. Volgens Beyond 3D is er grote kans dat de introductie van DirectX 9 in twee fasen zal gebeuren. DirectX 9.0 met ondersteuning voor versie 2.0 (VS2.0) van de vertex shaders en versie 9.1 met de ondersteuning voor vertex shaders 3.0 (VS3.0). Vooral ATi is gebaat met deze split daar hun R300 core waar de Radeon 9700 op gebaseerd is overeenkomt met DirectX 9.0 (VS 2.0). nVidia daarentegen komt met de features van de NV30 dicht in de buurt van de specificaties van DirectX 9.1 (VS 3.0). Hetzelfde verhaal gaat trouwens ook op voor de pixel shaders.

*Vertex Shaders

ATi's DX9 Natural Light Demo (klein)Het lijkt erop dat Microsoft bij het opstellen van de vertex shader v2.0 specificaties in DirectX 9 heeft gekeken naar de Radeon 9700. De R300 implementeert namelijk versie 2.0 van de vertex shaders. nVidia gaat een stapje verder met de NV30 met hun implementatie van de vertex shaders. Hoewel Beyond 3D nVidia's implementatie VS2.0+ noemt, zou je hier ook kunnen spreken van VS3.0-, want eigenlijk mist de NV30 alleen de texture lookup functie van de versie 3.0 van de vertex shaders. Zowel versie 2.0 als 3.0 van de vertex shaders zijn programmeerbaar en hiervoor krijgt de programmeur van vertex shaders programma's de beschikking over een aantal registers en instructies. Op het gebied van registers is er weinig verschil tussen VS2.0 en VS3.0. Het enige dat versie 3.0 toevoegt is de mogelijkheid om de input registers en de texture coördianten registers te indexeren. Zowel de R300 en de NV30 komen met hun implementatie het dichts in de buurt van VS2.0 hoewel er enkele verschillen tussen beide implementaties zijn.

Zo heeft de NV30 geen integer constanten, maar kan hiervoor floating point registers gebruiken. In een vertex shader programma dat alle 256 floating point constanten gebruikt kan de NV30 dus geen gebruik meer maken van lussen. Daar staat tegenover dat de NV30 tot 256 lussen kan hebben in een vertex shader programma als er weinig of geen gebruik wordt gemaakt van floating point constanten. De NV30 beschikt niet over boolean constanten om keuzen te maken. Dit is ook niet nodig omdat de NV30 over krachtige spronginstructies beschikt die het gebruik van de boolean constanten overbodig maken. De NV30 beschikt over twee adres registers. Dit maakt het mogelijk om gegevens op te zoeken in een tweedimensionale array. De VS3.0 specificaties schrijven maar een adres register voor. In VS3.0 wordt het predicate register geïntroduceerd waarover zowel de R300 als de NV30 niet beschikken. Toch heeft de NV30 hier een voordeel ten opzichte van de R300 omdat deze een conditie code register heeft dat meer functionaliteit biedt dan het predicate register. Het lijkt er dus op dat de NV30 beter bedeeld is dan de R300, maar registers zijn niet alles.

Om registers te kunnen gebruiken heb je instructies nodig. Zowel de R300 als de NV30 hebben een rijke instructieset met elk hun voor- en nadelen maar om een lang verhaal kort te maken, de NV30 heeft een uitgebreidere instructies set dan VS3.0 voorschrijft. Over de snelheid van de vertex shader units van de R300 en NV30 schrijft Beyond 3D dat de R300 klok-voor-klok sneller is dan de NV30, maar daar staat tegenover dat de NV30 over een aantal instructies beschikt waarvoor de R300 meerdere instructies moet gebruiken.

*Pixel Shaders

nVidia's NV30 verwachte uitvoer (klein)De DirectX Pixel Shaders versie 2.0 (PS2.0) lijken de specificaties van de R300 te volgen. Maar de NV30 gaat verder en komt in de buurt van de specificaties van versie 3.0 (PS3.0) van de pixel shaders. Zowel bij ATi als nVidia ligt de nadruk op het verbeteren van de programmeerbaarheid van de pixel shaders zodat er minder bandbreedte verloren gaat bij het uitvoeren van pixel shader programma's. De NV30 en de R300 hebben meer tijdelijke registers ter beschikking dan de PS3.0 standaard voorschrijft, met een voordeel voor de NV30 die in FP16 mode twee keer zoveel waarden kwijt kan. De R300 beschikt niet over het PS3.0 positie invoer register terwijl de NV30 dat wel doet. Net zoals bij de pixel shaders beschikt de NV30 niet over constanten en kan hier elk floating point register voor gebruiken. Zowel de R300 als de NV30 hebben een uitgebreide instructie set die voldoet aan PS2.0 specificaties. De NV30 voegt hier een aantal instructies aan toe die niet in de PS2.0 of PS3.0 standaard voorkomen en dus ook niet te gebruiken zijn in een programma dat DirectX 9 compatibel is. De R300 en NV30 beschikken niet over de spronginstructies die in PS3.0 worden voorgeschreven en hebben hier ook geen alternatieven voor.

*Overig

Zowel nVidia als ATi leggen de nadruk op programmeerbaarheid, efficiëntie en precisie. Doordat nVidia weinig nadruk legt op de bandbreedte van de NV30, stelt Beyond 3D dat de NV30 waarschijnlijk met een 128bits geheugenbus wordt uitgevoerd. Door de uitgebreide instructieset van de pixel en vertex shaders van de NV30 is het mogelijk dat de NV30 sommige programma's in een keer kan uitvoeren terwijl de R300 daar meerdere stappen voor nodig heeft wat tot een toename van bandbreedte gebruik kan leiden.

Wie de uiteindelijke slag gaat winnen blijft onduidelijk. Er zijn te veel verschillen tussen de R300 en de NV30, maar het is duidelijk dat nVidia met de NV30 een goede kans maakt om weer voor eventjes bovenaan te staan in afwachting van ATi's nieuwe wapen: de R350 met DDR-II ondersteuning en dus veel meer bandbreedte dan de huidige R300.

Volgende 20:08 Apple's Darwin OS uitgegeven voor x86
Vorige 17:31 AOL dreigt marktaandeel kwijt te raken
Advertentie

Reacties

«  1  2  3  4  »

Prachtig stukje Chinees voor mij ;)

Maar tzal wel positief nieuws zijn :)


tim d geeft hiermee aan dat niet iedereen een videokaart specialist is. Mensen die geinteresseerd zijn maar hier weinig van weten kunnen hier niets mee, hoewel ze graag een bijdrage willen leveren.

Is iedereen dan MS specialist?
internet specialist?
Java Specialist?
SCSI specialist?

Op elk gebied van de informatie technologie kun je diepgaande en minder diepgaande artikelen verwachten.

Als er ergens een heel stuk over HyperThreading staat haakt vast 80% af. Maar dat betekent niet dat het een zinloos artikel is.

Als je iets leest wat je interesse prikkelt maar waar je niet genoeg over weet, zoek je het op. Ik durf te wedden dat als je op bijvoorbeeld google zoekt naar vertex shaders dat je wel iets kunt vinden dat je enig inzicht verschaft.

What crawled up your ass?

Zegt de term 'humor' je iets?

Ik vraag me af wat de praktische gevolgen zijn van al deze verschillen. Je kan wel meer doen dan DirectX voorschrijft, maar compatibele programma's (de meeste, denk ik) zullen deze extra instructies niet gebruiken. Dus hoeveel heb je er werkelijk aan?

Ten tweede meen ik een statement gelezen te hebben van zowel MS als Ati dat alle DX9.0 hardware per definitie ook DX9.1 compliant zou zijn (zonder al te veel software-emulatie dus, anders is mijn TNT1 ook DX9.1 compliant ;)). Na dit verhaal gelezen te hebben begin ik toch aan dergelijke statements te twijfelen.

Niet dat het heel veel uit maakt, zowel de R300 als de NV30 zijn niet volledig (en dus gewoon niet) DX9.1 compatibel. Dus het zijn beide 'gewoon' DX9.0 kaarten.

Het mindere aan deze subtiele verschillen is het gebrek aan eenduidigheid dat nu in de DX9 kaarten sluipt. Om de pixel en vertex shaders volledig te benutten moet je dus voor de ATi en de nV een verschillend codepath gaan schrijven. Ik denk dat niet veel software huizen dat gaan doen. Alleen John Carmack zie ik er wel voor aan.
Toch zullen de meesten zich beperken tot de grootste gemene deler van beide kaarten. Welke kaart je dus ook koopt het onderste uit de kan wordt er niet uitgehaald..

Je TNT is dx9 compatible, niet compliant. Kaarten zijn compliant als ze ook hardwarematig de DX9 funties ondersteunen.. Doen ze dat niet dan kan je DX9 wel installeren en je kaart werkt ook wel, maar een beter beeld zul je niet krijgen.. compatible dus.
edit:
maar ik lees dat je al wist .. |:( Stom van me.. Ik denk trouwens dat de DX9.1 functies die ondersteund worden ook zullen werken onder 9.1 op beide kaarten.. dus half compliant zou je kunnen zeggen..

Beyond 3D heeft een aantal blueprints van de NV30 en Radeon 9700 en de gegevens over het toekomstige slagveld, DirectX 9, weten te bemachtigen en een uitgebreide analyse on-line gegooid.
Hmm, zie nergens dat ie geheime details van de NV-30 heeft bemachtigd. Hij sloopt al z'n informatie uit wat DX-9 beta's, de al aanwezige R300 (wat al op een presenteerblaadje komt dus), en dingen uit de geruchten machine. Een verhaal met een beste hap speculatie dus.

De kaart is nog lang niet uit en nu al zo'n groot verhaal over alle specs :?

Het lijkt mij dat we straks gewoon 2 hetzelfde presterende kaarten krijgen en het slagveld zich in de kosten gaat verplaatsen...

Doordat nVidia weinig nadruk legt op de bandbreedte van de NV30, stelt Beyond 3D dat de NV30 waarschijnlijk met een 128bits geheugenbus wordt uitgevoerd

Maar de NV30 gebruikt DDR2. DDR2 @ 128bit heeft meer bandbreedte dan DDR @ 128bit.

Maar de NV30 gebruikt DDR2. DDR2 @ 128bit heeft meer bandbreedte dan DDR @ 128bit.
Maar DDR@ 256 bij ATi levert nog altijd meer bandbreedte op dan DDR2 @ 128-bit bij nVidia.

Edit: Wat een rare moderatie? :? Eerst informatief, toen 2 behulpzaam, en nu 0 overbodig? Dat snap ik niet helemaal, want ik wees iemand er alleen maar op dat er nog wat misverstanden zijn over de bandbreedte verschillen bij 128-bit/DDR2 en 256-bit/DDR. Of is dat tegenwoordig ook al overbodig? :>

Denk van niet, DDR2 laat dubbelzoveel bandbreedte door dan DDR

dus

DDR2 @ 1000 MHz = 32 GB/s (128 bit)

Dat is niet waar, DDR2 laat maximaal gewoon net zoveel data per kloktik bij een gelijke bandbreedte toe als DDR1. De maximale data doorvoersnelheid is dan ook gewoon gelijk bij DDR en DDR2 op 300Mhz en 128bit brede bus.

Wel zijn de burst modes geoptimaliseerd en presteert het veel constanter dan DDR op gelijke kloksnelheid, het haalt ook vaker daadwerkelijk die theoretische snelheid :).

Eigenlijk kan je zeggen dat het met DDR2 veel makkelijker is om hoge snelheden te halen (dimms op DDR533 snelheid terwijl DDR400 geheugen al zeldzaam wordt met DDR1), maar het is er dus alleen om een hogere snelheid te kunnen behalen + een beetje winst omdat het geheugen wat vaker op de maximale snelheid kan werken.

Zie ook dit draadje:
http://gathering.tweakers.net/forum/list_messages/629401

DDR2 is op gelijke kloksnelheid effectief dus wel een beetje sneller dan DDR geheugen, maar de maximale snelheid is gewoon gelijk. De opgegeven (maximale) bandbreedte bij videokaarten verandert dus ook niet door DDR2, alleen de kloksnelheid kan enorm omhoog, zonder dat het ernstige problemen oplevert :).

256bit DDR is theoretisch gewoon twee maal zo snel als 128bit DDR2 en effectief nog steeds sneller (geen twee maal meer dan) want die optimalisaties van DDR zorgen niet voor een snelheidstoename van 100% (bij lange na niet zelfs),

Maar als de geruchten zover kloppen, dan heeft de NV30 een sloot bandbreedte minder nodig doordat ze enkele technieken gaan gebruiken die ze door de overname van 3DFX hebben weten te bemachtigen.

Die technieken die door Gigapixel zijn ontworpen (altans, een heel eind) en die nVidia nu dus in handen heeft door de overname van 3DFX (Gigapixel was overgenomen door 3DFX), zijn toegespitst op het verminderen van benodigde bandbreedte door toepassing van geavanceerde technieken.

Wat die technieken gaan inhouden weet ik niet precies, en ik denk ook niet dat die al zijn te vinden, maar ik denk wel dat de NV30 die gaat gebruiken. Want de overname is al een tijd geleden en nVidia heeft dus tijd genoeg gehad om de feature's verder door te ontwikkelen en toe te passen in de NV30.

Ik zou dus niet al te veel waarde hechten aan het feit dat op papier nVidia met de NV30 minder bandbreedte heeft. Het zegt wel iets, maar lang niet alles, net zoals MHz'en bij de CPU's niet alles zeggen.

Ik vraag me nu af welke kaart beter zal gaan presteren als ik kijk naar de 3 kaarten. De
- Radeon 9700 Pro getweaked 25% overklokt)
- NV30 !
- R350 !

Bij www.hunterspc.nl wordt beweerd dat dit ook kan. wie weet het antwoord wat ik zit nog te twijfelen tussen wachten of gewoon weg kopen B-)

Waaar zit OpenGL eigenlijk in dit verhaal. Op mijn Radeon werkt b.v. OpenGL veel beter dan DirectX. Of is het zo dat Vertex Shaders en pixel engines en weet ik het allemala ook werken via OpenGL aanroepen of zo?

het werkt idd wel. daarin is opengl geloof ik een heel stuk vrijer en kun je meer met oudere versies. toch zit opengl 2.0 eraan te komen wat natuurlijk goed nieuws is :)

maar het is duidelijk dat nVidia met de NV30 een goede kans maakt om weer voor eventjes bovenaan te staan in afwachting van ATi's nieuwe wapen: de R350 met DDR-II ondersteuning en dus veel meer bandbreedte dan de huidige R300.
Ik mis alleen nog de toevoeging dat R350 volledig DX9.1 compliant zal zijn itt NV30.

Eigenlijk hadden ze hier NV30 en R350 tegenover elkaar moeten zetten. Beide zijn nu alleen nog maar kaarten op papier en R350 wordt als tegenhanger van NV30 gereleased. Dat was een betere match geweest.

Ik mis alleen nog de toevoeging dat R350 volledig DX9.1 compliant zal zijn itt NV30.
Je kan in het artikel lezen dat Microsoft pas nog beta specificaties voor DirectX 9 heeft opgesteld. De final specificaties zijn dus nog lang niet zeker. Bovendien mag de Radeon 9700 wel DirectX 9.0 compliant zijn (waarschijnlijk) maar daar heb je natuurlijk niks aan als DirectX 9 nog lang niet uit is. Er zijn zelfs geruchten dat Microsoft nog even snel met een DirectX 8.2 komt.
Eigenlijk hadden ze hier NV30 en R350 tegenover elkaar moeten zetten. Beide zijn nu alleen nog maar kaarten op papier en R350 wordt als tegenhanger van NV30 gereleased. Dat was een betere match geweest.
De R300 is bedoeld als een concurrent voor de GeForce 4 Ti4600 en de R300 Pro is bedoeld als de hoogstpresterende grafische kaart. De NV30 zal er ook in verschillende smaken komen. De een na hoogst geklokte NV30, of misschien zelfs de laagst geklokte, zal het tegen de R300 moeten opnemen, terwijl de hoogst geklokte NV30 de best prestatie kaart moet worden waarmee de Radeon 9700 Pro van de troon wordt gestoten.

Het zelfde voor de R350, die de NV30 zal moeten verslaan en tevens de best presterende kaart moet worden. En dan komt de NV35 weer en zo gaat het steeds door ...

Je hebt gelijk hoor, maar wat ik eigenlijk wilde aan geven is dat ATi alles in R350 stopt wat ook in NV30 zit maar meer. Dus 'beyond DX9' zoals nVidia dat noemt. De kans is dus groot dat al die extra dingen gewoon standaard onderdeel zullen zijn van DX9.1 (mocht die er komen).
Het zelfde voor de R350, die de NV30 zal moeten verslaan en tevens de best presterende kaart moet worden. En dan komt de NV35 weer en zo gaat het steeds door ...
Correct me if I'm wrong, maar nV heeft voor 2003 alleen maar NV30 en een update (turbo-versie NV3?) van NV30 klaar staan. NV35 staat pas voor 2004 op de roadmap.

ATi heeft als NV30 killer dus de R350, en voor de tweede helft van 2003 staat R400 op de planning, die weer een geheel nieuwe kaart zal zijn, en ontwikkeld is door het tweede ontwikkelteam dat ook Radeon8500 heeft gemaakt. Deze kaart is al sinds eind 2001 in ontwikkeling. En ATi heeft bij de presentatie van Radeon9700 al aangegeven veel meer uit te kijken naar de komst van R400, zodat R300 naar het mainstream segment kan worden geduwd.

Als NV35 op de markt komt in 2004, dan staat daar volgens de ATi-roadmap R500 tegenover. Het gaat inderdaad steeds maar weer door. Het verschil is nu echter dat ATi nu steeds een antwoord lijkt te hebben op NV, waar NV vroeger altijd voorop liep en roet in het eten van ATi leek te gooien op momenten dat ze iets nieuws presenteerden.

Er zijn zelfs geruchten dat Microsoft nog even snel met een DirectX 8.2 komt.
Dat is geen gerucht, dat is zelfs zekerheid. Uit beta-tests van het spel New World Order bleek dat er in de DirectPlay van DX8.1 te krappe waardes stonden voor het verzenden van pakketjes, waardoor er bij veel data-verkeer lag ontstond. Dit werd uiteindelijk door Microsoft opgelost mbv. een beta DirectPlay 8.2 patch.

Komende november komt de volledige versie van NWO uit, en op de CD komt ook de installatie voor DirectX 8.2. Dit is bevestigd door de makers van NWO. Het spel draait niet in multiplayer als DX 8.2 niet geinstalleerd is...

Sorry hoor, maar ik snap echt niet hoe iemand kan denken dat Microsoft nu nog de specifications van DirectX9 zou veranderen.

Die liggen al LANG vast!!

Denk eens even na; Het EERSTE wat je gaat doen bij het ontwikkelen van een nieuwe DirectX versie is de specificaties van die versie vaststellen.
Vervolgens ben je echter nog vele maanden bezig om dat ook daadwerkelijk te programmeren, en te testen. Maar de specificaties weet je al lang. (Als je die niet zou weten, zou je ook niet weten wat je moet programmeren)

Vandaar dat ATI en Nvidia dan ook beide kaarten kunnen maken die DirectX9 compliant zijn voordat het uit is. (Stel je voor dat dat pas zou kunnen als DirectX9 uit. Dat zou dan betekeken dat je pas op zijn vroegst 1 jaar na verschijnen van een DirectX versie kaarten kan verwachten die daarmee compliant zijn)

Er is een zeer minieme kans dat de specs van DirectX 9.1 niet helemaal vastliggen. Maar dat is uiteindelijk ook maar een hele kleine wijziging in vergelijking met DX8->DX9.

weer het standaard verhaal ;) ... volgens mij ( :? ) was

-compliant: Net zoals een TNT1, hij KAN er mee werken.

-compatible: Hij ondersteund die technieken hardwarematig.

maar niet zeker hoor?

Het is dus omgekeerd. :)
«  1  2  3  4  »

Op dit item kan niet meer gereageerd worden.

Volgende 20:08 Apple's Darwin OS uitgegeven voor x86
Vorige 17:31 AOL dreigt marktaandeel kwijt te raken
VNU Media logo Hosted by True

© 1998 - 2012 Tweakers.net B.V. - Alle rechten voorbehouden - Contact - Jouw privacy - Algemene Voorwaarden

Uitgever van:

Website van het jaar 2011