• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

Oxide: Nvidia GPU's do not support DX12 Asynchronous Compute/Shaders.

gatti-man

Member
After having tried AMD multiple times, i always regret it. Nvidia just works (added with the fact software i run only runs on nvidia. (CUDA, and OpenGL based apps).

Also checkout AMD linux performance....

I'm a massive nvidia fanboy. I've never regretted any nvidia purchase, its always worked and never given me any issue (barring game specific issues upon launch, that are usually fixed with patches/new drivers)

As a gamer I've never had issues with single card amd. Nvidia has more features but both have been quality for me.
 
After having tried AMD multiple times, i always regret it. Nvidia just works (added with the fact software i run only runs on nvidia. (CUDA, and OpenGL based apps).

Also checkout AMD linux performance....

I'm a massive nvidia fanboy. I've never regretted any nvidia purchase, its always worked and never given me any issue (barring game specific issues upon launch, that are usually fixed with patches/new drivers)

That's cool?

What software, btw? I use a lot of Adobe Creative Suites on AMD using OpenCL(Not GL) and haven't had any issues and my AMD card just works(whatever that means.)

The only driver issues I really know about with AMD are regarding Crossfire profiles or trying to run Nvidia GameWorks code that hasn't been opened up so drivers can be made properly.

I buy perf/cost. When I bought last that was a 290X for $300 last year. No issues.
 

Easy_D

never left the stone age
Not everyone that owns AMD cards is a an AMD fan. A lot of people me included just buy what fits their needs and budget. I guess I can see how someone who has a lot of disposable income and only considers the high end could be dismissive of AMD, but this post is embarrassing. I never bought an AMD card until my 7870XT. I bought it because it hit a sweet spot performance and budget wise. I considered the 660 and 660Ti, but the 660 was kind of weak and the 660Ti was kind of expensive. Now I have to figure out do I buy a 390 8GB in the next few months or wait till next year. I would get NVidia, but my next card will have more than 4GBs of ram and I'm not spending $600+ to get it.

Also FuryX is out of stock on New Egg every time I check so someone has to be buying them.

Yeah this is me, when Nvidia put out the 8800 GT? I bought that shit, it was well worth the money, it gave incredible performance per euro. (Then I foolishly bought the HD5870 due to DX11 hype).

Then came the time when I had to upgrade again and I felt the FX6300 was an affordable and good enough upgrade from my old E8500 along with a 280x, which was around 30-ish euros cheaper than the 960. So yeah, for me, price is king :p
 
Yeah this is me, when Nvidia put out the 8800 GT? I bought that shit, it was well worth the money, it gave incredible performance per euro. (Then I foolishly bought the HD5870 due to DX11 hype).

Then came the time when I had to upgrade again and I felt the FX6300 was an affordable and good enough upgrade from my old E8500 along with a 280x, which was around 30-ish euros cheaper than the 960. So yeah, for me, price is king :p

8800GT was a hell of card. The only card that I regretted in hind sight was the 7800GT. I paid $300 for it and two tears later it got destroyed by a $200 8800GT.
 
That's cool?

What software, btw? I use a lot of Adobe Creative Suites on AMD using OpenCL(Not GL) and haven't had any issues and my AMD card just works(whatever that means.)

The only driver issues I really know about with AMD are regarding Crossfire profiles or trying to run Nvidia GameWorks code that hasn't been opened up so drivers can be made properly.

Mostly Autodesk Maya (mostly linux), a little Houdini (personal), also trying out a few gpu renderers atm and they are all CUDA. Maya is our workhorse, and the AMD gpu's struggle, in both performance and accuracy. Animation's play back quicker and without glitches on Nvidia, on AMD cards we get a plethora of issues. The biggest issue is texture related. Maya + AMD + Linux is....not fun. Now the FireGL line might be better (never tried them), but the Radeon's are terrible. Quadro is better than Geforce for what we do, but Geforce does work without issue.
 

EatChildren

Currently polling second in Australia's federal election (first in the Gold Coast), this feral may one day be your Bogan King.
So as a fairly recent 980 Ti owner and the public back-and-forth and kinda click bait nature of this report has lead me to try and understand the facts and implications with my limited tech knowledge and tiny monkey brain.

Correct me if I'm wrong, but here's what I've gathered (and grossly generalised): Maxwell (and at this point probably Pascal) GPUs have hardware level deficiencies compared to modern AMD GPUs when it comes to async compute. In practice, framerate gains from async heavy engines and software will greatly benefit AMD over Nvidia. The real world impact of this, especially in video games, is still up in the air, as it is entirely dependant on the proliferation of engines using asyc computing and the extent to which they do. The safest bet is indeed AMD as it's simply better to have than to not, and logic suggests that async performance will become more important as time goes by. But how long it takes for async performance to be a strong metric in video games and engines, and the extent to which they use async to the detriment of Maxwell Nvidia, is up in the air at this point.

Wrong/right/butts?
 
Mostly Autodesk Maya (mostly linux), a little Houdini (personal), also trying out a few gpu renderers atm and they are all CUDA. Maya is our workhorse, and the AMD gpu's struggle, in both performance and accuracy. Animation's play back quicker and without glitches on Nvidia, on AMD cards we get a plethora of issues. The biggest issue is texture related. Maya + AMD + Linux is....not fun. Now the FireGL line might be better (never tried them), but the Radeon's are terrible. Quadro is better than Geforce for what we do, but Geforce does work without issue.

Have you used AMD cards on Linux since they started providing open-source driver support last year? When the Omega drivers hit Linux last December they started swapping blows with the Windows drivers running OpenGL benchmarks. Might be worth looking back at if you have a few AMD comps currently not in use due to previous issues with open source drivers.
 
So as a fairly recent 980 Ti owner and the public back-and-forth and kinda click bait nature of this report has lead me to try and understand the facts and implications with my limited tech knowledge and tiny monkey brain.

Correct me if I'm wrong, but here's what I've gathered (and grossly generalised): Maxwell (and at this point probably Pascal) GPUs have hardware level deficiencies compared to modern AMD GPUs when it comes to async compute. In practice, framerate gains from async heavy engines and software will greatly benefit AMD over Nvidia. The real world impact of this, especially in video games, is still up in the air, as it is entirely dependant on the proliferation of engines using asyc computing and the extent to which they do. The safest bet is indeed AMD as it's simply better to have than to not, and logic suggests that async performance will become more important as time goes by. But how long it takes for async performance to be a strong metric in video games and engines, and the extent to which they use async to the detriment of Maxwell Nvidia, is up in the air at this point.

Wrong/right/butts?

hwzX6vL.jpg
 

diaspora

Member
So as a fairly recent 980 Ti owner and the public back-and-forth and kinda click bait nature of this report has lead me to try and understand the facts and implications with my limited tech knowledge and tiny monkey brain.

Correct me if I'm wrong, but here's what I've gathered (and grossly generalised): Maxwell (and at this point probably Pascal) GPUs have hardware level deficiencies compared to modern AMD GPUs when it comes to async compute. In practice, framerate gains from async heavy engines and software will greatly benefit AMD over Nvidia. The real world impact of this, especially in video games, is still up in the air, as it is entirely dependant on the proliferation of engines using asyc computing and the extent to which they do. The safest bet is indeed AMD as it's simply better to have than to not, and logic suggests that async performance will become more important as time goes by. But how long it takes for async performance to be a strong metric in video games and engines, and the extent to which they use async to the detriment of Maxwell Nvidia, is up in the air at this point.

Wrong/right/butts?
Yes
 

Spladam

Member
Yeah this is me, when Nvidia put out the 8800 GT? I bought that shit, it was well worth the money, it gave incredible performance per euro. (Then I foolishly bought the HD5870 due to DX11 hype).

Then came the time when I had to upgrade again and I felt the FX6300 was an affordable and good enough upgrade from my old E8500 along with a 280x, which was around 30-ish euros cheaper than the 960. So yeah, for me, price is king :p

Hahaha, just so happens I owned both CPU's, but I got a Sapphire 280 instead and OC the crap out of it, pretty happy with it too.
 

Spladam

Member
Mostly Autodesk Maya (mostly linux), a little Houdini (personal), also trying out a few gpu renderers atm and they are all CUDA. Maya is our workhorse, and the AMD gpu's struggle, in both performance and accuracy. Animation's play back quicker and without glitches on Nvidia, on AMD cards we get a plethora of issues. The biggest issue is texture related. Maya + AMD + Linux is....not fun. Now the FireGL line might be better (never tried them), but the Radeon's are terrible. Quadro is better than Geforce for what we do, but Geforce does work without issue.

Yeah, my experience is the AMD game GPUs (Radeon) are crap for this kind of work, and the FireGL perform MUCH better, just overpriced for the power they deliver though. It's not as bad on the NVIDIA side in my experience, as far as professional type applications go, until, as with both, you get into the need for double precision rendering.
 
Yeah, my experience is the AMD game GPUs (Radeon) are crap for this kind of work, and the FireGL perform MUCH better, just overpriced for the power they deliver though. It's not as bad on the NVIDIA side in my experience, as far as professional type applications go, until, as with both, you get into the need for double precision rendering.

I've found DP doesnt make any difference for performance (atleast from what i've tested). Geforce are great cards, and the current bang for the buck is the 780ti 6gb (if you can still get one). VRam being the biggest factor. (Although atm we are using CPU rendering (arnold), and only evaluating GPU renderers.)


We used to prefer Quadro over Geforce, but there is very little difference, and Viewport 2.0 isnt really 'crippled' like the old viewport was on geforce.
 

Easy_D

never left the stone age
8800GT was a hell of card. The only card that I regretted in hind sight was the 7800GT. I paid $300 for it and two tears later it got destroyed by a $200 8800GT.

Yeah I originally got my computer (well hardly the same computer given I've switched out every single part including the case over time :lol) back in 2008 with the C2D and the 8800GT, it was great.
 

MaddenNFL64

Member
The longer you wait to upgrade an AMD card, the more AMD dies. If you love AMD that much you should buy an AMD product.

The problem with AMD's "fans" is none of them are actually willing to buy AMD products otherwise AMD wouldn't be dying. Meanwhile Intel and Nvidia have figured out how to get people to buy their products on a regular basis. AMD has the worst "fans" around if you think about it.

Not my problem though I guess, this whole DX12 flamewar is funny to me because I bought a 980 Ti this year and next year if Pascal is amazing I'll just buy a Pascal, if not I'll wait until the following year. I don't care that Nvidia designs cards to be amazing now as opposed to whatever AMD does because I upgrade them so regularly, the money spent on a hobby I enjoy is worth it to me.

Wow, you sure love that branding, eh? I have a r9 290 because it was 200 bucks when I bought it and I could afford it.
 

Datschge

Member
Correct me if I'm wrong, but here's what I've gathered (and grossly generalised): Maxwell (and at this point probably Pascal) GPUs have hardware level deficiencies compared to modern AMD GPUs when it comes to async compute. In practice, framerate gains from async heavy engines and software will greatly benefit AMD over Nvidia. The real world impact of this, especially in video games, is still up in the air, as it is entirely dependant on the proliferation of engines using asyc computing and the extent to which they do. The safest bet is indeed AMD as it's simply better to have than to not, and logic suggests that async performance will become more important as time goes by. But how long it takes for async performance to be a strong metric in video games and engines, and the extent to which they use async to the detriment of Maxwell Nvidia, is up in the air at this point.

Wrong/right/butts?
Only DX12 is affected, AMD helped Microsoft with the specification so it's essentially optimized for AMD for now. Whether this actually equals a hardware level deficiencies for Nvidia cards is still up in the air, Nvidia may again be able to improve support through their driver optimizations. They clearly aren't there yet though, and it's to be seen whether it will still happen for Maxwell or become a selling point for its successor instead.

Regarding this it needs to be said that Nvidia considers its bulk driver a competitive advantage (which is why they are very protective of their IPs and aren't as accessible for licensing). They adapt their driver to any possible software, fixing issues that the developers weren't able/didn't bother to fix. AMD (and even less all other competitors) were never really able to keep up with Nvidia's pace on the software side, and this is where I think AMD's push for low footprint drivers comes in: Mantle, DX12 and Vulkan all move a lot of traditional responsibilities of drivers to the (engine) developers, in the ideal case making it less necessary to retroactively fix software issues in the drivers. Whether this actually will be the case is also to be seen.
 

wildfire

Banned
So as a fairly recent 980 Ti owner and the public back-and-forth and kinda click bait nature of this report has lead me to try and understand the facts and implications with my limited tech knowledge and tiny monkey brain.

Correct me if I'm wrong, but here's what I've gathered (and grossly generalised): Maxwell (and at this point probably Pascal) GPUs have hardware level deficiencies compared to modern AMD GPUs when it comes to async compute. In practice, framerate gains from async heavy engines and software will greatly benefit AMD over Nvidia. The real world impact of this, especially in video games, is still up in the air, as it is entirely dependant on the proliferation of engines using asyc computing and the extent to which they do. The safest bet is indeed AMD as it's simply better to have than to not, and logic suggests that async performance will become more important as time goes by. But how long it takes for async performance to be a strong metric in video games and engines, and the extent to which they use async to the detriment of Maxwell Nvidia, is up in the air at this point.

Wrong/right/butts?



We do know the real world impact already. Mantle was a thing because Microsoft was uncommunicative with devs so some of them convinced AMD to start an initiative for lower level programming for PC. Directx 12 pretty much killed mantle but all devs code for AMD gpu architectures already do to consoles.

Unlike the last generation where the software landscape didn't match consoles there is more reason to believe adoption of AMD gpus will be faster and cheaper for devs.

But noone is stupid about the current landscape. AMD's market share has continued to shrink year over year. Even though the costs of porting would be cheaper and faster no publisher will cut out Nvidia for market share trends alone and there are many additional reasons to continue supporting Nvidia besides that.

Ultimately it's a wash. If you buy AMD you can take solace that their GPUs shouldn't have the same level of driver issues they had in the past. If you invest or already invested in Nvidia no one is abandoning them. Not only they will get support, they will continue to get a disproportionate amount of support.
 

dr_rus

Member
So as a fairly recent 980 Ti owner and the public back-and-forth and kinda click bait nature of this report has lead me to try and understand the facts and implications with my limited tech knowledge and tiny monkey brain.

Correct me if I'm wrong, but here's what I've gathered (and grossly generalised): Maxwell (and at this point probably Pascal) GPUs have hardware level deficiencies compared to modern AMD GPUs when it comes to async compute. In practice, framerate gains from async heavy engines and software will greatly benefit AMD over Nvidia. The real world impact of this, especially in video games, is still up in the air, as it is entirely dependant on the proliferation of engines using asyc computing and the extent to which they do. The safest bet is indeed AMD as it's simply better to have than to not, and logic suggests that async performance will become more important as time goes by. But how long it takes for async performance to be a strong metric in video games and engines, and the extent to which they use async to the detriment of Maxwell Nvidia, is up in the air at this point.

Wrong/right/butts?

Butts.

A. We don't know much about Pascal so anything on that is not even speculation but a pure guesswork right now.

B. Maxwell is less efficient in async compute than GCN, that is true and that has been known for some time, there are no new news here. Whether to assert this is a "hardware level deficiencies" or a "conscious architectural decision stemming from the rest of the Maxwell pipeline" is up to whoever is making such statements as this can be seen as both, depending on one's point of view and the subject of discussion.

C. Let's be clear here: the discussion about async compute in DX12 is a pure gaming talk as it assumes that compute queues are running in parallel to graphics queue - and graphics means gaming. Async compute in pure compute mode is a different beast as it doesn't involve any context switches anywhere and was actually done first by NV in the GK110 GPU.

D. Gains from async compute are highly dependent on the loads which are happening in both graphics and compute threads. It would probably be correct to expect GCN to show bigger relative gains from running compute stuff asynchronously because their comparative ALU utilization on a typical gaming workload has always been lower than that of any NV GPU between G80 and GM200.

This is the main reason why it makes sense for them to have a complex "ACEs" frontend in their architecture which launches work on GPU's idle resources while graphics queue is loading something else. This is also the main reason why I'm completely not sure that improving the same frontend in Pascal would lead to the same gains as can be achieved in GCN - as NV's GPUs have less idle units in general on a typical graphics workload.

But that's assuming that Pascal won't shift its h/w utilization more in favor of compute and less in favor of graphics - which seems to be the general trend anyway and the real question is should launching stuff asynchronously lead to more efficient h/w load (a la GCN) or should it just not slow down other stuff already running on the GPU with peak load (a la Maxwell)? I fully expect NV to take the second route - meaning that they'll improve the frontend to allow async compute running with minimal overhead on state changes (i.e. not slowing down other things) but their gains from running stuff asynchronously are likely to remain small (that's completely out of nowhere but I expect them to be in range of +5-10% on Maxwell on average).

E. "Engines" has less to do with efficient async compute than shaders which are actually run by these engines. Running compute stuff asynchronously is very easy in D3D12, making sure that you are actually getting some performance from this on most of modern D3D12 PC hardware is damn hard and will require an effort from a game developer.

F. "Safest bet" on what exactly? There are no requirements of supporting the async compute in one way other another. The driver just have to support it in D3D12 but how exactly it will launch the threads submitted to async queues are entirely up to the driver and the h/w it is running on. If in say GCN2 AMD will improve their typical h/w utilization on the graphics workload to a point where running compute stuff asynchronously in parallel with graphics won't bring them as big performance gains as on GCN1 then what exactly would that mean?

Async compute is just a way of running programs on a GPU, you don't have to run them in parallel to get DX12 compatibility and what's more important - you don't have to run them in parallel to achieve the performance crown and beat your competition. All of this is entirely dependent on the GPU architectures in question.

Anyone read the Guru 3D article on the topic?

They're saying Nvidia does have async compute, but the scheduler is software, not hardware:

http://www.guru3d.com/news-story/nvidia-will-fully-implement-async-compute-via-driver-support.html

Frontend command dispatch unit is there on Maxwell chips so what "software" are we're talking about here? There is a lot of stuff going on in the driver "software" compiler on both Maxwell and GCN architectures. It is a word play to call one's solution "software" and another's "hardware" as all solutions are using drivers which are running on CPUs. The only sensible metric is the relative CPU loads during job submission, and last time I checked it was several times faster on NV GPUs - this will certainly change in DX12/Vulkan but there is no indications that NV will become slower than AMD here. So let's wait for some benchmarks.
 
Weird, this goes against my personal testing for performance, gpu utilization, and CPU scaling.
dx12_diff3tyacc.png


Blue is framerate and frametimes for DX 12. Higher average framerate in dx12
Just to underline that DX12 in the Unreal Engine 4 is still in experimentation phase and so they still have to properly implement many of the systems to take advantage of it. Just something you need to take into account.

Perhaps this is why.
 

dr_rus

Member
Pretty sure the actual shaders are same on DX11 and DX12. (HLSL)

If by "actual shaders" you mean the syntaxis then sure, it's the same HLSL 5.0 with minor extensions for new FLs features. But the actual shaders written with it should be different to get the promised performance out of DX12.
 

tenchir

Member
The 15.9 beta drivers have a bad memory leaks problem. I had to revert back to 15.8 for my Fury Nano because once VRAM gets filled to 4GB it will stay that way till you restart the computer.
 
This seems solvable, though I must of course admit no familiarity with the nitty gritty. But, ultimately efficient use of parallelization all comes down to getting idle threads out of the way and giving that compute time to another thread. It's still one core working on one thread, always and forever. The only way to get a core working on another thread that needs attention is with a context switch. Async compute sounds like it's is just enabling automatically-managed-by-hardware context switches.

But context switches happen in software all the time without special hardware support. If you look in task manager right now you probably have a four-digit number of active threads and only a few CPUs. It seems like NVIDIA could "emulate" async compute by simulating the magical DX12 async compute interrupts that schedule context switches, to interrupts that originate completely in software. It's all coming from the API, right?

Or so I hope... (proud owner of 980 ti)

Edit:

Anyone read the Guru 3D article on the topic?

They're saying Nvidia does have async compute, but the scheduler is software, not hardware:

http://www.guru3d.com/news-story/nvidia-will-fully-implement-async-compute-via-driver-support.html

Oh, look at that, I'm right.
 
ARK dev confirms DX12 is performing worse than DX11, especially on certain cards. Of course ARK being Nvidia sponsored game he can't say it's a Nvidia problem:

http://steamcommunity.com/app/346110/discussions/0/481115363854241094/#c481115363854292469

After we found out it was heavily dependent on drivers and the hardware vendors progress we slowed ours a bit. Its still being worked on, but we have no plans on releasing it until it at least runs betters than the DX11 version. And that is a hard thing to generate an ETA for.

The DX12 client was planned for "tomorrow", one month ago claiming +20% boost to performance, then pulled:

https://twitter.com/survivetheark/status/636961770637271045

This for all of you expecting magic performance out of DX12. It won't happen. It's all pointless #HYPE.

DX12 myths starting to shatter week after week.
 
DX12 myths starting to shatter week after week.

We've known for a while now that these new apis have lower overhead but they require more work on the part of the developers. There's no way the games will have better permormance magically, but there is potential for better performance once developers get accustomed to using them properly.
 

tuxfool

Banned
This for all of you expecting magic performance out of DX12. It won't happen. It's all pointless #HYPE.

DX12 myths starting to shatter week after week.

It is well known at this point that the current UE4 implementation of DX12 is a fairly naive port from DX11. But even then the benefits are in very specific instances and not something that is unconditionally going to bring in gains.
 

NeOak

Member
ARK dev confirms DX12 is performing worse than DX11, especially on certain cards. Of course ARK being Nvidia sponsored game he can't say it's a Nvidia problem:

http://steamcommunity.com/app/346110/discussions/0/481115363854241094/#c481115363854292469



The DX12 client was planned for "tomorrow", one month ago claiming +20% boost to performance, then pulled:

https://twitter.com/survivetheark/status/636961770637271045

This for all of you expecting magic performance out of DX12. It won't happen. It's all pointless #HYPE.

DX12 myths starting to shatter week after week.

Release it as beta... Oh wait, that would risk their TWIMTBP money by giving AMD better performance.

On a more serious note, it sucks they pulled it.
 
We've known for a while now that these new apis have lower overhead but they require more work on the part of the developers. There's no way the games will have better permormance magically, but there is potential for better performance once developers get accustomed to using them properly.

Point is this is Unreal engine, not specific ARK work, and they specifically say it's a "drivers and the hardware vendors" issue, and not something on their end.

So the bad performance is not the code, it's the drivers and hardware that are NOWHERE close to all the hype that preceded this. Especially the whole myth of "better performance on current hardware".
 

Easy_D

never left the stone age
I guess Mantle didn't work either and the higher framerates I get when I use it in BF4 is just an illusion.
 

IceIpor

Member
Release it as beta... Oh wait, that would risk their TWIMTBP money by giving AMD better performance.

On a more serious note, it sucks they pulled it.

Assassin's Creed fiasco all over again. Sad really.
New features are always fun to play with.
 

Akronis

Member
ARK dev confirms DX12 is performing worse than DX11, especially on certain cards. Of course ARK being Nvidia sponsored game he can't say it's a Nvidia problem:

http://steamcommunity.com/app/346110/discussions/0/481115363854241094/#c481115363854292469



The DX12 client was planned for "tomorrow", one month ago claiming +20% boost to performance, then pulled:

https://twitter.com/survivetheark/status/636961770637271045

This for all of you expecting magic performance out of DX12. It won't happen. It's all pointless #HYPE.

DX12 myths starting to shatter week after week.

I don't think most reasonable people expected magical performance gains. It takes a lot of work from the devs to reach the same performance as even DX11 if it's new.
 

tuxfool

Banned
I guess Mantle didn't work either and the higher framerates I get when I use it in BF4 is just an illusion.

Yes sir, totally an illusion. DX12 has to unconditionally provide a magic 20% performance improvement or else it is an utter failure.
 
Top Bottom