Go Back   Beyond3D Forum > Core Forums > GPGPU Technology & Programming

Reply
 
Thread Tools Display Modes
Old 11-Sep-2009, 11:01   #1
Scali
Naughty Boy!
 
Join Date: Nov 2003
Posts: 2,127
Send a message via ICQ to Scali Send a message via MSN to Scali
Default DirectCompute (Direct3D11 Compute Shaders)

I figured I'd create this thread, in a similar vein to the OpenCL discussion thread.

So here we can discuss the current state of drivers, compilers, SDKs, support etc.

I'll start off with my experiences so far. Yesterday, the public beta of the Vista Platform Update was released by Microsoft, and the August 2009 DirectX SDK not much earlier.
These allow you to to get a full DirectX 11 RTM development environment and runtime on both Vista and Windows 7.
Sometime since the 190 release of nVidia's drivers, there is also hardware support for DirectCompute (which you currently have to enable via the registry). nVidia also offers some DirectCompute samples in their GPU Computing SDK now.

So basically, yesterday I managed to get full 'retail' DX11 code compiled and actually running on hardware for the first time.

However, on my laptop with Intel X3100 (a DX10 chip), the DX11 runtime didn't seem to get installed for some reason, even after getting the Platform Update. So no DX11 there (the beta runtime did work on it, earlier), and certainly no DX11CS at this point. I'll try to copy the files from my desktop manually, and see if that convinces it to run DX11 code. It should at least run DX11 with DX9 and DX10 downlevel features. That's what it did with the beta runtime anyway.

Did anyone try getting DX11/DirectCompute running on any other hardware/OSes? What's the status with other DX10 IHVs, such as S3 and AMD?
__________________
ZX81 -> C64 -> Hercules -> Plantronics CGA -> Paradise VGA -> Amiga ECS -> Amiga AGA -> Cirrus Logic 5428 VLB -> S3 Trio64 -> Matrox Mystique -> PCX2 -> Matrox G200 -> Matrox G450 -> GeForce2 GTS -> Kyro II -> Radeon 8500 -> Radeon 9600XT -> GeForce 7600GT -> GeForce 8800GTS -> HD5770
Scali is offline   Reply With Quote
Old 11-Sep-2009, 11:26   #2
pcchen
Moderator
 
Join Date: Feb 2002
Location: Taiwan
Posts: 1,555
Default

I've run some DX11CS samples on my Windows 7 + 285 GTX (with 190 driver) with older SDK. All samples are graphics related, there's no interesting samples such as n-body or similar.

Because the SDK I used is of earlier version and documentation is incomplete, I didn't try writing my own program. Maybe I'll try it later with the latest SDK.
pcchen is offline   Reply With Quote
Old 11-Sep-2009, 11:42   #3
Scali
Naughty Boy!
 
Join Date: Nov 2003
Posts: 2,127
Send a message via ICQ to Scali Send a message via MSN to Scali
Default

There's an n-body sample in the August 2009 SDK, and also in the GPU Computing SDK. The DX SDK one seemed to run pretty well on my 8800GTS320. I haven't been able to run the samples from the GPU Computing SDK yet, since they are built on the March 2009 SDK. So far I got it compiling, but it exits before it even shows a window. I haven't had time to trace the problem yet.
__________________
ZX81 -> C64 -> Hercules -> Plantronics CGA -> Paradise VGA -> Amiga ECS -> Amiga AGA -> Cirrus Logic 5428 VLB -> S3 Trio64 -> Matrox Mystique -> PCX2 -> Matrox G200 -> Matrox G450 -> GeForce2 GTS -> Kyro II -> Radeon 8500 -> Radeon 9600XT -> GeForce 7600GT -> GeForce 8800GTS -> HD5770
Scali is offline   Reply With Quote
Old 11-Sep-2009, 12:56   #4
neliz
Senile Member
 
Join Date: Mar 2005
Location: Walsh Avenue, Santa Clara
Posts: 3,318
Send a message via ICQ to neliz Send a message via MSN to neliz
Default

Quote:
Originally Posted by Scali View Post
Did anyone try getting DX11/DirectCompute running on any other hardware/OSes? What's the status with other DX10 IHVs, such as S3 and AMD?
A DXCompute/Physics Demo was shown at the AMD events over the past few days.
__________________
Have a foot in the Stirrup
neliz is offline   Reply With Quote
Old 11-Sep-2009, 13:23   #5
Scali
Naughty Boy!
 
Join Date: Nov 2003
Posts: 2,127
Send a message via ICQ to Scali Send a message via MSN to Scali
Default

Quote:
Originally Posted by neliz View Post
A DXCompute/Physics Demo was shown at the AMD events over the past few days.
Yea, but what's the status of that for us 'regular' developers? (They demo'ed OpenCL/Havok physics months ago, but afaik even the latest Stream 2.0 beta SDK still only allows CPU support for OpenCL).
I mean, can we run DXCompute on any current Radeon DX10/DX10.1 hardware? If so, what driver does one need to enable DXCompute?
__________________
ZX81 -> C64 -> Hercules -> Plantronics CGA -> Paradise VGA -> Amiga ECS -> Amiga AGA -> Cirrus Logic 5428 VLB -> S3 Trio64 -> Matrox Mystique -> PCX2 -> Matrox G200 -> Matrox G450 -> GeForce2 GTS -> Kyro II -> Radeon 8500 -> Radeon 9600XT -> GeForce 7600GT -> GeForce 8800GTS -> HD5770

Last edited by Scali; 11-Sep-2009 at 13:33.
Scali is offline   Reply With Quote
Old 11-Sep-2009, 17:27   #6
Demirug
Senior Member
 
Join Date: Dec 2002
Posts: 1,253
Send a message via MSN to Demirug
Default

Quote:
Originally Posted by neliz View Post
A DXCompute/Physics Demo was shown at the AMD events over the past few days.
I am expected that this were CS 5.0 samples. They although had a copy of BattleForge that make use of Compute Shader.

Quote:
Originally Posted by Scali View Post
Yea, but what's the status of that for us 'regular' developers? (They demo'ed OpenCL/Havok physics months ago, but afaik even the latest Stream 2.0 beta SDK still only allows CPU support for OpenCL).
I mean, can we run DXCompute on any current Radeon DX10/DX10.1 hardware? If so, what driver does one need to enable DXCompute?
No there are no public drivers with compute shader support yet.
__________________
GPU blog
Demirug is offline   Reply With Quote
Old 11-Sep-2009, 17:36   #7
neliz
Senile Member
 
Join Date: Mar 2005
Location: Walsh Avenue, Santa Clara
Posts: 3,318
Send a message via ICQ to neliz Send a message via MSN to neliz
Default

it definitly wasn't battelforge. it was a physics/AI demo.
__________________
Have a foot in the Stirrup
neliz is offline   Reply With Quote
Old 11-Sep-2009, 18:26   #8
Anteru
Member
 
Join Date: Jul 2004
Posts: 106
Default

Quote:
Originally Posted by Scali View Post
However, on my laptop with Intel X3100 (a DX10 chip), the DX11 runtime didn't seem to get installed for some reason, even after getting the Platform Update. So no DX11 there (the beta runtime did work on it, earlier), and certainly no DX11CS at this point.
Same problem here, with a 9700M GT -- no matter what I try, I don't get a d3d11.dll, and hence I cannot run the examples. I've asked in the XNA forums, no luck so far, so I'm really puzzled what's going on. Especially as I checked the event log, and the platform update (it's actually 3 updates bundled) finishes without errors. Might be due to the 186.x driver, which maybe does not advertise some functionality. That's really crap, as I'd like to run the REF rasterizer at least to check my code ... and DX11 on downlevel DX10 hardware should work just as well.
__________________
None ... really, none :)
Anteru is offline   Reply With Quote
Old 11-Sep-2009, 20:07   #9
Scali
Naughty Boy!
 
Join Date: Nov 2003
Posts: 2,127
Send a message via ICQ to Scali Send a message via MSN to Scali
Default

Quote:
Originally Posted by Anteru View Post
Same problem here, with a 9700M GT -- no matter what I try, I don't get a d3d11.dll, and hence I cannot run the examples. I've asked in the XNA forums, no luck so far, so I'm really puzzled what's going on. Especially as I checked the event log, and the platform update (it's actually 3 updates bundled) finishes without errors. Might be due to the 186.x driver, which maybe does not advertise some functionality. That's really crap, as I'd like to run the REF rasterizer at least to check my code ... and DX11 on downlevel DX10 hardware should work just as well.
Do you happen to have a non-English Windows installation perchance?
Mine is Dutch, I suspect that is the problem. It probably wants a localized runtime, which isn't available yet.
Anyway, I copied some files manually, and I can now run the DX11 samples on the Intel X3100. But it doesn't run the compute shaders. I suppose I'll need a driver update for that.
__________________
ZX81 -> C64 -> Hercules -> Plantronics CGA -> Paradise VGA -> Amiga ECS -> Amiga AGA -> Cirrus Logic 5428 VLB -> S3 Trio64 -> Matrox Mystique -> PCX2 -> Matrox G200 -> Matrox G450 -> GeForce2 GTS -> Kyro II -> Radeon 8500 -> Radeon 9600XT -> GeForce 7600GT -> GeForce 8800GTS -> HD5770
Scali is offline   Reply With Quote
Old 11-Sep-2009, 20:14   #10
Demirug
Senior Member
 
Join Date: Dec 2002
Posts: 1,253
Send a message via MSN to Demirug
Default

To be honest I would not expect any driver with Compute Shader 4.x support from Intel.
__________________
GPU blog
Demirug is offline   Reply With Quote
Old 11-Sep-2009, 20:17   #11
Anteru
Member
 
Join Date: Jul 2004
Posts: 106
Default

Quote:
Originally Posted by Scali View Post
Do you happen to have a non-English Windows installation perchance?
Mine is Dutch, I suspect that is the problem. It probably wants a localized runtime, which isn't available yet.
Yes, I have a localized version (German in my case.) However, I don't get how the d3d11.dll can be different between English and non-English versions, but I'll try tomorrow with an English Vista and see if it works there. If so, I'll also copy the d3d11.dll and try here again. Which other files did you have to copy?
__________________
None ... really, none :)
Anteru is offline   Reply With Quote
Old 11-Sep-2009, 20:20   #12
Scali
Naughty Boy!
 
Join Date: Nov 2003
Posts: 2,127
Send a message via ICQ to Scali Send a message via MSN to Scali
Default

Also dxgi.dll.
__________________
ZX81 -> C64 -> Hercules -> Plantronics CGA -> Paradise VGA -> Amiga ECS -> Amiga AGA -> Cirrus Logic 5428 VLB -> S3 Trio64 -> Matrox Mystique -> PCX2 -> Matrox G200 -> Matrox G450 -> GeForce2 GTS -> Kyro II -> Radeon 8500 -> Radeon 9600XT -> GeForce 7600GT -> GeForce 8800GTS -> HD5770
Scali is offline   Reply With Quote
Old 12-Sep-2009, 00:00   #13
Humus
Crazy coder
 
Join Date: Feb 2002
Location: Stockholm, Sweden
Posts: 3,061
Send a message via ICQ to Humus Send a message via MSN to Humus
Default

Quote:
Originally Posted by Scali View Post
Yea, but what's the status of that for us 'regular' developers?
Not sure what the status is for public driver support, with DX11 being final I suppose it shouldn't be too far off. Otherwise, just contact AMD devrel and they can set you up with a driver.
__________________
[ Visit my site ]
I speak for myself and only myself.
Humus is offline   Reply With Quote
Old 12-Sep-2009, 12:59   #14
Anteru
Member
 
Join Date: Jul 2004
Posts: 106
Default

Quote:
Originally Posted by Scali View Post
Also dxgi.dll.
Right, and you should also take d2d_1.dll.

FWIW, the update that is not getting installed is "Windows6.0-KB971512-x64", this contains the d3d11.dll. On the US Vista, it gets installed (you can see it under Programs, Installed updates), while it's missing on my machine.
__________________
None ... really, none :)
Anteru is offline   Reply With Quote
Old 12-Sep-2009, 18:55   #15
Scali
Naughty Boy!
 
Join Date: Nov 2003
Posts: 2,127
Send a message via ICQ to Scali Send a message via MSN to Scali
Default

Quote:
Originally Posted by Scali View Post
I haven't been able to run the samples from the GPU Computing SDK yet, since they are built on the March 2009 SDK. So far I got it compiling, but it exits before it even shows a window. I haven't had time to trace the problem yet.
Update: I got it running now. The problem was that the GPU Computing SDK comes with its own precompiled DXUT and DXUTOpt libraries. Those were also compiled with the March 2009 SDK, and as such won't work on the RTM runtime.
In order to get it running, I had to compile the August 2009 libraries and put them in the directory.
Some other things to note:
- The GPU Computing SDK links to static libraries, the DirectX SDK links to dynamic libraries. I changed the DX SDK settings to link to static libraries aswell, in order to avoid conflicts while linking.
- The GPU Computing SDK projects still refer to d3d11_beta.lib, I had to change that to d3d11.lib.
- The GPU Computing SDK refers to dxerr9.lib, this has been deprecated, so I had to change that to the new dxerr.lib

After that, it all compiled and worked.
__________________
ZX81 -> C64 -> Hercules -> Plantronics CGA -> Paradise VGA -> Amiga ECS -> Amiga AGA -> Cirrus Logic 5428 VLB -> S3 Trio64 -> Matrox Mystique -> PCX2 -> Matrox G200 -> Matrox G450 -> GeForce2 GTS -> Kyro II -> Radeon 8500 -> Radeon 9600XT -> GeForce 7600GT -> GeForce 8800GTS -> HD5770
Scali is offline   Reply With Quote
Old 12-Sep-2009, 19:22   #16
MfA
Senior Member
 
Join Date: Feb 2002
Posts: 3,656
Send a message via ICQ to MfA
Default

Wow, you'd think they would do a clean install and try to build the examples before shipping (even on a beta).
MfA is online now   Reply With Quote
Old 12-Sep-2009, 19:38   #17
Scali
Naughty Boy!
 
Join Date: Nov 2003
Posts: 2,127
Send a message via ICQ to Scali Send a message via MSN to Scali
Default

Quote:
Originally Posted by MfA View Post
Wow, you'd think they would do a clean install and try to build the examples before shipping (even on a beta).
Well, they did, except they did it against the March 2009 SDK, and the August 2009 SDK was released only a few days later, breaking all their hard work (March 2009 SDK came with beta runtimes for DX11)
Since I don't expect nVidia to come out with an update soon, I figured I'd fix it myself.
__________________
ZX81 -> C64 -> Hercules -> Plantronics CGA -> Paradise VGA -> Amiga ECS -> Amiga AGA -> Cirrus Logic 5428 VLB -> S3 Trio64 -> Matrox Mystique -> PCX2 -> Matrox G200 -> Matrox G450 -> GeForce2 GTS -> Kyro II -> Radeon 8500 -> Radeon 9600XT -> GeForce 7600GT -> GeForce 8800GTS -> HD5770
Scali is offline   Reply With Quote
Old 14-Sep-2009, 03:59   #18
pcchen
Moderator
 
Join Date: Feb 2002
Location: Taiwan
Posts: 1,555
Default

I can run the samples in the August SDK directly, but maybe that's because I've installed March SDK before. I also built one of my own program to test the new SDK, and it works fine on my GTX 285 with the 190.62 driver.

ATI released a new driver (9.9) but I didn't see anything related to compute shader in the release notes and I didn't test it with compute shader yet.
pcchen is offline   Reply With Quote
Old 14-Sep-2009, 08:29   #19
Scali
Naughty Boy!
 
Join Date: Nov 2003
Posts: 2,127
Send a message via ICQ to Scali Send a message via MSN to Scali
Default

Quote:
Originally Posted by pcchen View Post
I can run the samples in the August SDK directly, but maybe that's because I've installed March SDK before. I also built one of my own program to test the new SDK, and it works fine on my GTX 285 with the 190.62 driver.

ATI released a new driver (9.9) but I didn't see anything related to compute shader in the release notes and I didn't test it with compute shader yet.
I was talking about the examples in the nVidia GPU Computing SDK (this is the successor to the Cuda SDK, and supports C for Cuda, OpenCL and DirectCompute. It is currently in beta, available to registered developers). Their SDK was built against the March 2009 DirectX SDK.
Since I had the August 2009 SDK installed, I no longer had the beta runtimes against which the nVidia SDK was built, so I had to modify the samples and recompile them against the final.
__________________
ZX81 -> C64 -> Hercules -> Plantronics CGA -> Paradise VGA -> Amiga ECS -> Amiga AGA -> Cirrus Logic 5428 VLB -> S3 Trio64 -> Matrox Mystique -> PCX2 -> Matrox G200 -> Matrox G450 -> GeForce2 GTS -> Kyro II -> Radeon 8500 -> Radeon 9600XT -> GeForce 7600GT -> GeForce 8800GTS -> HD5770

Last edited by Scali; 14-Sep-2009 at 09:19.
Scali is offline   Reply With Quote
Old 14-Sep-2009, 17:09   #20
Demirug
Senior Member
 
Join Date: Dec 2002
Posts: 1,253
Send a message via MSN to Demirug
Default

For everyone who has trouble installing the update. I am asked my contact at Microsoft about this. The current version only installed on English Vista versions. They missed to put this information on the website. I will post an update as soon as I know dates for localized Windows versions.
__________________
GPU blog
Demirug is offline   Reply With Quote
Old 14-Sep-2009, 18:44   #21
Anteru
Member
 
Join Date: Jul 2004
Posts: 106
Default

Quote:
Originally Posted by Demirug View Post
For everyone who has trouble installing the update. I am asked my contact at Microsoft about this. The current version only installed on English Vista versions. They missed to put this information on the website. I will post an update as soon as I know dates for localized Windows versions.
Cool, thanks! Hopefully nvidia releases CS enabled drivers for Notebooks in the meantime, so I can finally give DX11 a shot.
__________________
None ... really, none :)
Anteru is offline   Reply With Quote
Old 15-Sep-2009, 02:15   #22
FrameBuffer
Member
 
Join Date: Aug 2005
Posts: 376
Default

Quote:
Originally Posted by Demirug View Post
I am expected that this were CS 5.0 samples. They although had a copy of BattleForge that make use of Compute Shader.



No there are no public drivers with compute shader support yet.
Is this what you were looking for ?

http://rage3d.com/board/showpost.php...25&postcount=1

Quote:
On August 31st 2009, AMD reached a new software development milestone – the world’s first Microsoft WHQL certificated graphics driver for DirectX 11 and DirectCompute 11.

AMD’s DirectX 11 WHQL certified graphics driver delivers support for all of the key DirectX 11 level features required for new gaming experiences and acceleration of next generation high performance applications:
  • DirectCompute 11
    Shader Model 5.0
    Tessellation
    Addressable stream output
    Geometry Shader Instancing
    Pull Model attribute evaluation
    Subroutines
    New texture formats

Meeting Microsoft’s WHQL certification requirements in the ATI Catalyst™ 8.651 graphics driver for DirectX 11 and Windows 7 clearly demonstrates AMD’s focus and determination to deliver an extremely stable and robust experience on AMD’s next generation of DirectX 11 ATI Radeon™ Graphics accelerators.
FrameBuffer is offline   Reply With Quote
Old 15-Sep-2009, 03:17   #23
willardjuice
willyjuice
 
Join Date: May 2005
Location: New Jersey
Posts: 736
Send a message via AIM to willardjuice
Default

Quote:
Originally Posted by FrameBuffer View Post
Is this what you were looking for ?

http://rage3d.com/board/showpost.php...25&postcount=1
So once again...there's no public driver with compute shader support.
willardjuice is offline   Reply With Quote
Old 15-Sep-2009, 08:26   #24
Scali
Naughty Boy!
 
Join Date: Nov 2003
Posts: 2,127
Send a message via ICQ to Scali Send a message via MSN to Scali
Default

Quote:
Originally Posted by Demirug View Post
For everyone who has trouble installing the update. I am asked my contact at Microsoft about this. The current version only installed on English Vista versions. They missed to put this information on the website. I will post an update as soon as I know dates for localized Windows versions.
If you have any info on when they plan to do the official release, I'd be even more interested in that. I hope this beta won't last too long. Once Vista has full official support for DX11 aswell, there's no reason to continue supporting DX10. It's bad enough that we still have to support DX9 for the XP crowd... supporting three different versions is a bit too much. I hope we can drop DX10 soon, and DX9 not much later (ie when Windows 7 turns out to be a huge success).
__________________
ZX81 -> C64 -> Hercules -> Plantronics CGA -> Paradise VGA -> Amiga ECS -> Amiga AGA -> Cirrus Logic 5428 VLB -> S3 Trio64 -> Matrox Mystique -> PCX2 -> Matrox G200 -> Matrox G450 -> GeForce2 GTS -> Kyro II -> Radeon 8500 -> Radeon 9600XT -> GeForce 7600GT -> GeForce 8800GTS -> HD5770
Scali is offline   Reply With Quote
Old 15-Sep-2009, 10:16   #25
Demirug
Senior Member
 
Join Date: Dec 2002
Posts: 1,253
Send a message via MSN to Demirug
Default

Quote:
Originally Posted by willardjuice View Post
So once again...there's no public driver with compute shader support.
Even if they made this driver public the new stuff is only supported for DX11 hardware.

Quote:
Originally Posted by Scali View Post
If you have any info on when they plan to do the official release, I'd be even more interested in that. I hope this beta won't last too long. Once Vista has full official support for DX11 aswell, there's no reason to continue supporting DX10. It's bad enough that we still have to support DX9 for the XP crowd... supporting three different versions is a bit too much. I hope we can drop DX10 soon, and DX9 not much later (ie when Windows 7 turns out to be a huge success).
The plan is to release this very shortly after the official Windows 7 start.

I know this problem with the 3 (3.5 as we although support 10.1) APIs very well as I had it too. Just keep in mind that you would need Vista SP2 to install the DX11 update. If you can force your customer to use SP2 there is now reason to keep DX10. We had already very good results for performances and compatibility with the DX11 beta runtime.
__________________
GPU blog
Demirug is offline   Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 13:48.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.