Archief - Vraag Over DirectX 11

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

DarkForceX

Legacy Member
Goeden morgen,

Zoals we allemaal weten is DirectX 11 opkomst en is al te testen in Windows 7 Beta ( als je een DX11 Ready Videokaart hebt ) die binnen kort uit word gebracht door nvidia ( Nvidia GT300 ) en ik had dus pas een DirectX 10 videokaart gehaald ( Nvidia Geforce 9600GT 512MB ), en stel voor dat ik over wil gaan naar DirectX 11 moet ik dan een nieuwe videokaart kopen ?, of denkt u dat deze Dx10 videokaarten het wel kan ondersteunen, ik weet de antwoord eigenlijk al maar toch wou ik het even vragen..

Bedankt voor uw aandacht :niceone:

DarkForceX

pixbillye

Legacy Member
moest bij hardware staan...

Dx11 zal voor vista en win 7 zijn + zal vermoedelijk ook werken op Dx 10.x grafische kaarten (heb er al een en ander over gelezen)

rizla +

Legacy Member
pixbillye zei:
moest bij hardware staan...

Dx11 zal voor vista en win 7 zijn + zal vermoedelijk ook werken op Dx 10.x grafische kaarten (heb er al een en ander over gelezen)


Moet idd beter in hardware dit.

Maar als het verder waar zal zijn wat je zegt is dat heugelijk nieuws, toch stel ik me dan de vraag of je bedoelt dat een dx10 kaart fully zal renderen met dx11. (as ge begrijpt wa'k wil bedoelen)
Zal wel niet ?

Epyon

Legacy Member
DirectX 11 zal compatibel zijn met DX10 hardware, mits een driverupdate. De grafische pipeline van DX11 verschilt nl niet zoveel met die van DX10. 90% van de grafische features van de meeste DX11 games zal je ook kunnen draaien op DX10 grafische kaarten. DX11 bouwt nl voort bovenop DX10.

Het nieuwe aan DX11 is o.a. de compute shader. Bij DX11 ligt de focus dan ook veel meer op GPGPU (general purpose GPU) berekeningen: het inschakelen van de GPU voor traditionele (niet grafische) berekeningen. Nu moeten zo'n dingen via nVidia's eigen CUDA of ATI's CTM programmeertaal gebeuren, maar met DX11 komt er een uniforme programmeeromgeving.

Long story short: je DX10 hardware zal nog een heel eind meekunnen ;) .

pixbillye

Legacy Member
klopt, maar voor het moment ligt Nvidia op dat gebied al wat verder dan ati.
Bij het encoderen van beeldmateriaal verloopt het proces beter bij Nvidia (prog heet badaboom) en is het resultaat ook stukken beter als van ati met hun Avivo prog.

Mette2

Legacy Member
DarkForceX zei:
( als je een DX11 Ready Videokaart hebt ) die pas uit is gebracht door Nvidia ( Nvidia GT200&300 )

GT200 is DX10 en GT300 bestaat nog niet. Er is tot op heden nog geen enkele DX11 hardware op de markt. Ik verwacht die pas in Q3/Q4 2009.

Epyon

Legacy Member
pixbillye zei:
klopt, maar voor het moment ligt Nvidia op dat gebied al wat verder dan ati.
Bij het encoderen van beeldmateriaal verloopt het proces beter bij Nvidia (prog heet badaboom) en is het resultaat ook stukken beter als van ati met hun Avivo prog.
Badaboom heeft weinig met nVidia te maken. Badaboom is een programma van het bedrijf Elemental Technologies. Het maakt wel gebruik van nVidia's CUDA, maar het is niet van nVidia. Avivo daarentegen is wel van ATI.

Over het algemeen kan je zeggen dat ATI's CTM efficiënter dan nVidia's CUDA was omdat, zoals de naam Close to Metal doet vermoeden, het een low level programmeertaal was die je toegang tot alle opties van de GPU gaf. CUDA daarentegen was higher level, maar wel veel makkelijker te gebruiken. Dat laatste geeft de doorslag gegeven.

ATI's CTM bestaat nu wel niet meer, dat is nu overgegaan in AMD's Stream SDK die van Brook, een C-achtige taal gebruikt maakt, vergelijkbaar met nVidia's CUDA.

Sowieso is CUDA, CTM en Stream geen lang leven meer beschoren. OpenCL en DX11 zullen dit allemaal vervangen. Deze SDK's zijn makkelijk te gebruiken en compatibel met zowel ATI als nVidia grafische kaarten.

Er is wel nog één probleem met de huidige nVidia hardware waardoor deze mogelijk DX11 niet zullen aankunnen. DX11 vereist hardware die minstens volledig aan de DX10.1 normering voldoet, en op dit moment heeft enkel ATI dit. Waarschijnlijk zal een driver fix dit voor nVidia echter wel oplossen.

DarkForceX

Legacy Member
Mette2 zei:
GT200 is DX10 en GT300 bestaat nog niet. Er is tot op heden nog geen enkele DX11 hardware op de markt. Ik verwacht die pas in Q3/Q4 2009.

Klopt GT300 is nog niet uit die bedoelde ik met DX11 Ready, GT200 hoorde er niet bij, ik ben blij dat ik hoor dat een driver update het draaien van DX11 zal verhelpen, anders kon ik mijn pas gekochte videokaart alweer weg doen, ( ik hou van up-to-date blijven ) :)

Bedankt voor uw reacties u heeft mijn vraag verholpen.
en zal vortaan me vragen over computer hardware bij Hardware Discussies van 9Lives plaatsen, en ik wil nog even doorgeven dat ik 9Lives een super mooi en duidelijke forum vind waar je niet lang op een antwoord hoeft te wachten.

M.v.g DarkForceX

Kenshi

Legacy Member
Wanneer er games uitkomen die gebruik maken van directx 11 zullen die hoogstwaarschijnlijk toch te zwaar zijn voor je 9600gt hoor.

pixbillye

Legacy Member
Epyon zei:
Badaboom heeft weinig met nVidia te maken. Badaboom is een programma van het bedrijf Elemental Technologies. Het maakt wel gebruik van nVidia's CUDA, maar het is niet van nVidia. Avivo daarentegen is wel van ATI.

Dat verklaart meteen ook waarom badaboom niet gratis is.

Epyon zei:
Over het algemeen kan je zeggen dat ATI's CTM efficiënter dan nVidia's CUDA was omdat, zoals de naam Close to Metal doet vermoeden, het een low level programmeertaal was die je toegang tot alle opties van de GPU gaf. CUDA daarentegen was higher level, maar wel veel makkelijker te gebruiken. Dat laatste geeft de doorslag gegeven.

ATI's CTM bestaat nu wel niet meer, dat is nu overgegaan in AMD's Stream SDK die van Brook, een C-achtige taal gebruikt maakt, vergelijkbaar met nVidia's CUDA.

Sowieso is CUDA, CTM en Stream geen lang leven meer beschoren. OpenCL en DX11 zullen dit allemaal vervangen. Deze SDK's zijn makkelijk te gebruiken en compatibel met zowel ATI als nVidia grafische kaarten.

OpenCL (Open Computing Language) zal inderdaad de nieuwe standaard worden (of is dat al dacht ik van nov/dec 2008 met versie 1.0) :unsure: voor GP-GPU.
GP-GPU is zeer geschikt voor parallelliseerbare calculatie om bvb media te encoderen zodat de CPU minder belast zal worden bij die job.
OpenCL is eigenlijk gebaseerd op een voorstel van Apple en nog enkele andere bedrijven zoals Barco, Electronic Arts (dat bvb bekend is van games zoals Crysis) , IBM, Intel, Texas Instruments (rekenmachines) en Nvidia (en er zijn er nog een aantal). Apple wil bij hun volgende OS x versie snow leopard ervoor zorgen dat de grafische kaart ingezet kan worden bij calculatieopdrachten.

Toch wil Microsoft met direct X 11 hetzelfde kunnen bieden qua functies, maar werkt niet samen met Apple wegens concurrentie.

OpenCL is verder ook zeer interessant voor de gameontwikkelaars want het zal eenvoudiger zijn om "engines" van games te schrijven dan met Direct x bvb.

Epyon

Legacy Member
OpenCL is van Khronos, dat ook OpenGL maakt. Het staat in de sterren geschreven dat OpenCL dezelfde toer zal opgaan als OpenGL. Die laatste is/was ook superieur aan Direct3D uit de DirectX API maar heeft toch het onderspit moeten delven. De druk die Microsoft uitoefent om zijn standaarden gevestigd te krijgen valt niet te onderschatten. Vaak kunnen ontwerpers financiele of intellectuele steun van Microsoft krijgen als ze hun API gebruiken, en dan is de keus vaak al snel gemaakt.

Wat GPGPU voor consumenten betreft denk ik dat OpenCL niet veel brokken zal maken. Ik zie het wel toegepast worden in de professionele sector alwaar er vaak Linux en BSD als OS gebruikt wordt.

Oldskooler

Legacy Member
Eens dat dx11 de standaard wordt, zijn de huidige dx10 kaarten toch waardeloos.

Dat is zoals de eerste dx10 kaarten, je kon dx10 niet eens gebruiken omdat de kaarten opzich te zwak waren om games degelijk te draaien in dx10 (high settings dus).

apa

Legacy Member
Even wat uitleggen wat zo'n API (zoals CUDA, DX11 of OpenCL) eigenlijk inhoudt.

Bij het programmeren worden routines gecreëerd en aangesproken. Een aantal van die routines schrijf je zelf, een aantal andere worden door derden geleverd als onderdeel van een "framework" (zoals het .NET framework van Microsoft).

Een API is nu een set van routines waarvan de functie duidelijk beschreven is en die gekende namen en parameters hebben. Ontwikkelaars kunnen hun programma's dan schrijven gebruikmakend van die gekende routines.
Aan de andere kant heb je hardware-leveranciers die in hun drivers routines voorzien met diezelfde namen, parameters en functionaliteit als deze die in het framework verwerkt zitten en ervoor zorgen dat die routines op de juiste manier uitgevoerd worden op de onderliggende hardware.

Je kan op die manier een willekeurig programma laten samenwerken met willekeurige onderliggende hardware voor zover zowel het programma als de drivers dezelfde API ondersteunen.

Wat betreft DirectX moet je weten dat alle routines die in die API verwerkt zitten ook door de CPU uitgevoerd kunnen worden: Microsoft biedt namelijk zelf een "driver" die routines bevat die het werk door de CPU laten uitvoeren. Indien je videokaart/-driver "slechts" DirectX 10 ondersteunt, dan zullen de niet-ondersteunde routines alsnog door de CPU worden uitgevoerd...

DarkForceX

Legacy Member
apa zei:
Even wat uitleggen wat zo'n API (zoals CUDA, DX11 of OpenCL) eigenlijk inhoudt.

Bij het programmeren worden routines gecreëerd en aangesproken. Een aantal van die routines schrijf je zelf, een aantal andere worden door derden geleverd als onderdeel van een "framework" (zoals het .NET framework van Microsoft).

Een API is nu een set van routines waarvan de functie duidelijk beschreven is en die gekende namen en parameters hebben. Ontwikkelaars kunnen hun programma's dan schrijven gebruikmakend van die gekende routines.
Aan de andere kant heb je hardware-leveranciers die in hun drivers routines voorzien met diezelfde namen, parameters en functionaliteit als deze die in het framework verwerkt zitten en ervoor zorgen dat die routines op de juiste manier uitgevoerd worden op de onderliggende hardware.

Je kan op die manier een willekeurig programma laten samenwerken met willekeurige onderliggende hardware voor zover zowel het programma als de drivers dezelfde API ondersteunen.

Wat betreft DirectX moet je weten dat alle routines die in die API verwerkt zitten ook door de CPU uitgevoerd kunnen worden: Microsoft biedt namelijk zelf een "driver" die routines bevat die het werk door de CPU laten uitvoeren. Indien je videokaart/-driver "slechts" DirectX 10 ondersteunt, dan zullen de niet-ondersteunde routines alsnog door de CPU worden uitgevoerd...

Ik draai op AMD QuadCore X4 9650 2x2 gig ram, dus dit moet geen probleem zijn om een DirectX 11 spel op mijn Nvidia Geforce 9600GT (512) te draaien ?

Of zeg je voor een optimale goede uitvoer van een DirectX 11 spel toch beter een nieuwe videokaart kopen ?, als een nieuwe videokaart het veel beter doet dan ga ik het toch kopen, tenzij je zegt van het zult niks schelen ..

Yank

Legacy Member
Moest ge nu eens gewoon de problemen aanpakken wanneer ze zich stellen? Het eerste DX11 spel is toch nog niet voor vandaag.
En aangezien de grootste verandering toch de Compute Shader is, ga je daar niets van merken in games, die compute shader wordt daar afaik niet gebruikt.

pixbillye

Legacy Member
DarkForceX zei:
Ik draai op AMD QuadCore X4 9650 2x2 gig ram, dus dit moet geen probleem zijn om een DirectX 11 spel op mijn Nvidia Geforce 9600GT (512) te draaien ?

Of zeg je voor een optimale goede uitvoer van een DirectX 11 spel toch beter een nieuwe videokaart kopen ?, als een nieuwe videokaart het veel beter doet dan ga ik het toch kopen, tenzij je zegt van het zult niks schelen ..

Je zal nu de meeste games kunnen draaien zonder al te veel beperkingen afhankelijk van de resolutie. (recentere zullen iets minder vlot gaan dan oudere, maar dat is logisch).

Het zal ook nog wel een tijdje duren tot we de eerste games en hardware zullen tegenkomen met Dx11.
Maar tegen dat het zover is zullen er nieuwe grafische kaarten (graka) op de markt zijn, die dan weer beter zijn dan die die we nu hebben. Ik zou gewoon nog wachten met een andere graka aan te kopen.

apa

Legacy Member
DarkForceX zei:
Ik draai op AMD QuadCore X4 9650 2x2 gig ram, dus dit moet geen probleem zijn om een DirectX 11 spel op mijn Nvidia Geforce 9600GT (512) te draaien ?
Er zijn nog geen echte DX11 titels uit bij mijn weten, dus is het erg moeilijk om te voorspellen hoe goed/slecht die zullen presteren. Toen DX10 uitkwam, kon je ook al even DX10 kaarten kopen en bleek achteraf (wanneer de eerste DX10 games uitkwamen) dat die eigenlijk zwak presteerden...

Ik zou dus Yankee's advies volgen en wachten tot er meer over geweten is.

Ik sprak hoger niet over de performance van het draaien van DX11 op de CPU, enkel over het feit dat het kan. Bekijk 3DMark eens: daarin heb je ook een aantal CPU tests die eigenlijk niets meer doen dan alle GPU versnelling uitschakelen en de CPU-drivers van Microsoft gebruiken voor DirectX... Ik weet niet hoe het daarmee bij jou gesteld is, maar bij mij is dat allesbehalve speelbaar. Nu zal het uiteraard nooit zó erg gesteld zijn in jouw geval omdat de meeste routines wel door je hardware zullen worden uitgevoerd (enkel de niet ondersteunde worden door de CPU uitgevoerd), maar je begrijpt alvast wel dat de performance lager zal zijn dan met dedicated DX11 hardware.

Epyon

Legacy Member
Oldskooler zei:
Eens dat dx11 de standaard wordt, zijn de huidige dx10 kaarten toch waardeloos.

Dat is zoals de eerste dx10 kaarten, je kon dx10 niet eens gebruiken omdat de kaarten opzich te zwak waren om games degelijk te draaien in dx10 (high settings dus).
Heb jij eigenlijk iets in deze thread gelezen? DX11 is een strikte superset van DX10 waarbij de meeste wijzigingen zich op het GPGPU vlak bevinden. 90% van de grafische features blijven die uit DX10. Het enige significante verschil is de tesselator, maar tegen dat ontwikkelaars doorhebben hoe die goed te gebruiken zijn we alweer een heel eind verder.

Zoals Microsoft zelf zegt: DX10.1 kaarten zullen, mits een driverupdate, zonder veel problemen DX11 software draaien, met een aantal DX11-only features uitgeschakeld en vervangen door aanverwante DX10 legacy functions.

Anandtech heeft anders een mooi (en kort) artikel waarin onder andere de DX11 pipeline en de tesselator besproken worden.

DarkForceX

Legacy Member
Na het lezen van zoveel antwoorden op me vraag kom ik toch uit om voor een optimale goed gebruik van een DirectX 11 Spel (die nog niet bestaan) een nieuwe kaart te kopen, oude kan het ook, maar nieuw is altijd beter ;)

pixbillye

Legacy Member
DarkForceX zei:
Na het lezen van zoveel antwoorden op me vraag kom ik toch uit om voor een optimale goed gebruik van een DirectX 11 Spel (die nog niet bestaan) een nieuwe kaart te kopen, oude kan het ook, maar nieuw is altijd beter ;)

Het is nog te vroeg he om een Dx 11 ondersteunende graka aan te kopen want ze bestaan nog niet, dus... nog ff op je tanden bijten ;)
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan