• 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.

I'm kind of thinking about selling both my 980 ti and 970 and popping in a couple gigabyte 390s on new egg for $299 each.

Seriously nvidia dx12 games are starting to come out and the just released 980 ti is looking like a 2 year old 290x.

Wait a minute, one benchmark for one alpha software which only stresses one part of the dx12 pipeline, on top of a dev who states such wishy washy statments as "AFAIK, Maxwell doesn't support Async Compute, at least not natively. " is going to make you sell your 980Ti? Which apparently now is worse than a 290x?

You surely see how that might be a rash opinion?
 

Quotient

Member
I would assume we are a few years away before the mass adoption of dx12. It wouldnt surprise me if developers continue to use dx11 due to familiarity.
 

dr_rus

Member
No, they don't. I don't think they ever will. Nvidia is the only IHV to support it.
Which is rather funny considering that this is a pure software feature.

As far as I see thinks, Maxwell 2 needs to preempt workloads, if he wants to execute something asynchronously.
He now has the ability to schedule up to 30+ compute-queues, but not asynchronous and only in a big package.
This doesn't make sense as Hyper-Q would simply not work as intended if that was the case. There's also no way of actually _forcing_ the async compute (i.e. making the pipeline to preempt prior to finishing its current workload) thus it can't make the performance worse. Worst case* for async compute is zero performance increase, not worse performance.

* - there is a rather thin line here on what is actually worse - when an architecture has idle units which can be using asynchronously or when it doesn't. From a pure architectural point of view a chip which is using 100% of its resources on a current workload all the time is a better chip than the one which needs to run several workloads in parallel to get to 100% utilization.

No, Intel also doesn't support deferred context, because they said it was not worth it.
NV is able to get DX12-like CPU overheads in DX11 with them so they clearly worth a lot when used properly.
 

dr_rus

Member
The tier 3 on GCN vs tier 2 on maxwell thing is probably referring to D3D12's resource binding tiers. The most impactful difference is with the max bound CBVs per stage, but even then there's very little overhead in setting a new root CBV or a descriptor table.
Oh, I know all that. It just a little slip in the OG post which kinda shows the bias of the author in my opinion. There are things in Maxwell 2 which aren't supported by GCN and which can actually be used to improve performance / quality if one would decide so. Considering that the benchmark in question is a pure PC engine for a PC exclusive game I find it very strange that these guys are using some FL12_0+ features of GCN but don't use FL12_1 features of Maxwell - as this is something which I would expect from a console-focused engine mostly.

On the wider discussion about what the lack of async compute means for DX12 performance, it'll make a difference, but it's hard to say how much because it depends on how a game is using compute (i.e. you'd get a decent gain if substantial compute work can be done early in the frame during low shader utilisation, such as async with shadow buffer rendering).

I wouldn't judge future performance from this single benchmark - you'd hardly choose a graphics card based on a review that only benchmarked a single DX11 game. Let alone a game that was originally built to run on a single vendor's hardware to demonstrate their own API (oxide's engine began with GCN using Mantle). Compute aside there are plenty of other decisions that can benefit one vendor's architecture but can ruin performance on another vendors. This is a presentation for DX11 but the issues for each vendor are highlighted in red and green respectively, and they are numerous, and are linked to their underlying hardware architectures.
Completely agree but I still think that several accusations made in this post must be answered by NV - even if it's just to officially confirm them. It's very strange that async compute would lead to "abysmal" performance on NV's h/w especially as there is no clear way of actually switching it on or off in DX12 code. What the OG post imply - that NV provided them with the code which switched it off on their h/w doesn't make any sense either as there is no way of choosing to use or not async compute from inside the DX12 code. So there are a lot of questions around the whole post which should be answered by the IHV in question I think.
 

Iastfan112

Neo Member
I would assume we are a few years away before the mass adoption of dx12. It wouldnt surprise me if developers continue to use dx11 due to familiarity.

12 should come much quicker than previous iterations. With free Windows 10 the amount of computers that will be capable of using it will be much higher early in it's life cycle. If I'm not mistaken the guy from DICE who's behind Frostbite wants to push all the games on that engine to solely DX12 by holiday season 2016.
 

Crayon

Member
I'm making my way thru the thread but I have a question to help my comprehension: Is this one of those cases where I should be reading "dx12" as "dx12 and vulkan"? Or is there something specific to dx12 going on here?
 

Arkanius

Member
I'm making my way thru the thread but I have a question to help my comprehension: Is this one of those cases where I should be reading "dx12" as "dx12 and vulkan"? Or is there something specific to dx12 going on here?

Not much is known about Vulkan, but they are similar, and the backend of Vulkan is Mantle by AMD so...
 

dr_rus

Member
Their overheads are twice as good as AMD's Dx11 implementation. But around an order of magnitude less than Dx12 overheads.

If we're looking at a pure draw calls throughput then yes but if we're looking at real workd benchmarks of Mantle/DX12 vs DX11 on AMD/NV vs NV then this order of magnitude of draw calls in DX12 doesn't really convert to any meaningful performance advantage as we're mostly GPU limited even with thin APIs.
 

Crayon

Member
Not much is known about Vulkan, but they are similar, and the backend of Vulkan is Mantle by AMD so...

I mean it seems like were talking about the newer low level functions so it should be both but I'm hardly following as it is and kept second guessing.
 

TwIsTeD

Member
Man I want a new GPU so bad, but there's no way I'm jumping in now. The only card that looks appetizing right now is a sub $300 390.

I just jumped from a GTX660 to a GTX970 for about $265 (EVGA 970 FTW with MGSV) - the debate for the 390 was real but the free game and reduced cost swayed me back to Green - end of next year after Pascal drops I`ll make a new decision
 

Renekton

Member
The issue becomes more convoluted because developers are aware of bottlenecks and design their engines around them. If Nvidia holds an 80% marketshare in PC discrete graphics, developers may hesitate to design an engine around AMD's strengths if they are doing PC-first development.
This situation is depressing.

You can see UE4 going out of its way for Gameworks, yet no sight of AsyncCompute on PC which is part of DX12.
 

Celcius

°Temp. member
Gears of War Ultimate Edition for PC is supposed to use DX12 right? Would that make it the first pc game to use dx12?
 

fertygo

Member
I'm kind of thinking about selling both my 980 ti and 970 and popping in a couple gigabyte 390s on new egg for $299 each.

Seriously nvidia dx12 games are starting to come out and the just released 980 ti is looking like a 2 year old 290x.

I have fucking headache just from reading this post.

Sure, go ahead and do that.
 

BriGuy

Member
So I was planning on getting a new laptop with a gtx970m in the not too distant future. Should I scrub those plans and wait a few more months for something better?
 

x3sphere

Member
I'm kind of thinking about selling both my 980 ti and 970 and popping in a couple gigabyte 390s on new egg for $299 each.

Seriously nvidia dx12 games are starting to come out and the just released 980 ti is looking like a 2 year old 290x.

Is this a joke post... I hope it is.
 

ZOONAMI

Junior Member
So I was planning on getting a new laptop with a gtx970m in the not too distant future. Should I scrub those plans and wait a few more months for something better?

Nvidia has a complete lock on laptop gpus. Amds only even putting the m295x in the alienware 15/17, and and I've read it gets really hot. Thats the only mobile part that would even come close to a 970m.
 
P.S. There is no war of words between us and Nvidia. Nvidia made some incorrect statements, and at this point they will not dispute our position if you ask their PR. That is, they are not disputing anything in our blog. I believe the initial confusion was because Nvidia PR was putting pressure on us to disable certain settings in the benchmark, when we refused, I think they took it a little too personally.

I think this is not getting enough attention, that seems really anti-competitive.
 

ZOONAMI

Junior Member
Is this a joke post... I hope it is.

I'm not necessarily opposed to selling what i have for the roughly the same price I bought them for and getting cheaper gpus that actually support dx12 on a hardware level and should perform similarly. The 390 is as good/better than a 970 even in dx11 in 4k which is what i run. And it's looking like a 390 at 4k in dx12 will be better than a 980 and close to a 980ti.

I also have problems with my 980 ti scaling properly on my ax800u with displayport. Nvidia has scaling problems with mst 4k displays, my old 290x never did. And I'd be fine with pocketing roughly 400 dollars.

So, not a joke post, I have some unique display issues that factor into it though.
 

SliChillax

Member
I'm kind of thinking about selling both my 980 ti and 970 and popping in a couple gigabyte 390s on new egg for $299 each.

Seriously nvidia dx12 games are starting to come out and the just released 980 ti is looking like a 2 year old 290x.

rue1t.gif
 

SRG01

Member
If I'm understanding all of this correctly, doesn't this also imply that multi-GPU scaling would be far better with AMD under DX12 because it can make asynchronous calls across multiple cards?
 

Locuza

Member
there have been lots of hardware features that were suppose to speed things up, but due to poor implementations were graphics decelerators.

dynamic branching
geometry shaders
deferred contexts
plenty more

the twitter post i linked earlier is by a reputable guy according to dictator. pretty sure it was ROV he was saying was slow on nvidia
You are right on this one.
In the past several good looking ideas turned out underwhelming and didn't worked out in practise.

But Pixelsync (now as ROV in DX12) was already used in Grid 2 and ran very efficient.
Nvidia also published real time numbers for VXGI with an 980, which is far slower with Kepler, without CR.

I have good feelings that this round the new graphics features will be very useful.

Reaching here but....AMD has apparently got priority on HBM2 manufacturing next year. We know that they are also more experienced with the new memory type as they had a year head-start on Nvidia. Add to that, they've apparently got some kind of architectural advantage with DX12 games.

What's that I see in the distance, AMD rising from the ashes next-gen? :p
Maybe priority at Hynix but Samsung will also produce HBM next year.
AMD has a long journey in front before they truly can rise from the ashes.
They need products which can beat the competition at several key points, they need to be financial stable, they need a robust revenue stream, they need to invest in future products.
The outlook is hard for them.

2016 is a milestone for AMD, then we will know if this company can survive or not.

This doesn't make sense as Hyper-Q would simply not work as intended if that was the case. There's also no way of actually _forcing_ the async compute (i.e. making the pipeline to preempt prior to finishing its current workload) thus it can't make the performance worse. Worst case* for async compute is zero performance increase, not worse performance.
There should be the possibility to halt the workload and switch the context.
This would of course lead to worse performance.

NV is able to get DX12-like CPU overheads in DX11 with them so they clearly worth a lot when used properly.
No, only if the developer really screwed up with DX12.

Considering that the benchmark in question is a pure PC engine for a PC exclusive game I find it very strange that these guys are using some FL12_0+ features of GCN but don't use FL12_1 features of Maxwell - as this is something which I would expect from a console-focused engine mostly.
Of course not all features are equal and easy to implement.
Conservative Rasterization and Tiled Resources Tier 3 are definitely not straightforward to use without a clear target and use case in mind.

Completely agree but I still think that several accusations made in this post must be answered by NV - even if it's just to officially confirm them. It's very strange that async compute would lead to "abysmal" performance on NV's h/w especially as there is no clear way of actually switching it on or off in DX12 code. What the OG post imply - that NV provided them with the code which switched it off on their h/w doesn't make any sense either as there is no way of choosing to use or not async compute from inside the DX12 code. So there are a lot of questions around the whole post which should be answered by the IHV in question I think.
The developer can choose to put every command in one queue, instead of dispatching additional compute-queues alongside with some synchronisations points.
I would guess, that's the thing oxide did for Nvidia GPUs.
 
I just jumped from a GTX660 to a GTX970 for about $265 (EVGA 970 FTW with MGSV) - the debate for the 390 was real but the free game and reduced cost swayed me back to Green - end of next year after Pascal drops I`ll make a new decision
$265 for a 970 is a steal. My 7870xt is the first time since Voodoo that I wasn't team Nvidia. Ny 7870xt has served me well and seems to be able to handle all current gen stuff. I paid $300 for a 7800GT and replaced it 2 yrs later with a $200 8800GT that destroyed it. I'm not trying to replicate that.
 
Gears of War Ultimate Edition for PC is supposed to use DX12 right? Would that make it the first pc game to use dx12?

I think Fable Legends is technically first; PC beta is out, it runs on DX12. First officially released game is anybody's guess, that's gonna depend on a lot of scheduling factors.
 

Inuhanyou

Believes Dragon Quest is a franchise managed by Sony
Nvidia has been doing really evil things for a while now.

They are suing GPU makers by claiming to own the very concepts of a GPU and a shader.

So why is it that they have so many defenders? Because they have a stranglehold on the market and people get their products from them?

I mean, i understand companies like these only come in various shades of evil by definition, but you'd think there would be more outcry considering MS's reputation in the Windows space. Is it because its relegated only to the enthusiast GPU segment of the market?
 

Crayon

Member
So why is it that they have so many defenders? Because they have a stranglehold on the market and people get their products from them?

I mean, i understand companies like these only come in various shades of evil by definition, but you'd think there would be more outcry considering MS's reputation in the Windows space. Is it because its relegated only to the enthusiast GPU segment of the market?

You have to consider that the microsoft's reputation, deserved or not, is a lofty one to be compared to.
 

W!CK!D

Banned
I'm making my way thru the thread but I have a question to help my comprehension: Is this one of those cases where I should be reading "dx12" as "dx12 and vulkan"? Or is there something specific to dx12 going on here?

We're talking about an architectual limitation on Nvidia's side. No matter the API, Nvidia cards will suck at GPGPU. For example if Nintendo released a new console with a Nvidia GPU, this console wouldn't be able to do async compute. The console maker's engineers know their stuff, however, and in contrast to most PC gamers, these people don't fall for Nvidia's PR lies. There is a reason why AMD gets all the console deals.

If I'm understanding all of this correctly, doesn't this also imply that multi-GPU scaling would be far better with AMD under DX12 because it can make asynchronous calls across multiple cards?

You really shouldn't be using multiple GPUs anyway. Do every video game programmer a favor and buy one single GPU. Optimizations for SLI and Crossfire take a disproportionate amount of time and resources that could be much better invested otherwise. Graphics cards are ridiculously overpriced for years. No need to waste your money on multiple ridiculously overpriced cards.

Is amd being in the home consoles helping them on the pc side?

It's definitely not worsening the situation. Multiplat engines are still held back by PC graphics cards, though. In a perfect world, every PC would be a unified system with a single processor and a single RAM pool. The concept behind the PS4 system architecture is the future of gaming PCs.
 

pottuvoi

Banned
there have been lots of hardware features that were suppose to speed things up, but due to poor implementations were graphics decelerators.

dynamic branching
geometry shaders
deferred contexts
plenty more

the twitter post i linked earlier is by a reputable guy according to dictator. pretty sure it was ROV he was saying was slow on nvidia
Indeed.
Geometry shaders would have seen a lot more use if they would be half decent on majority of cards.
At least Intel has got them fast, so it shouldn't be impossible for Nvidia/AMD.
 

Crayon

Member
We're talking about an architectual limitation on Nvidia's side. No matter the API, Nvidia cards will suck at GPGPU. For example if Nintendo released a new console with a Nvidia GPU, this console wouldn't be able to do async compute. The console maker's engineers know their stuff, however, and in contrast to most PC gamers, these people don't fall for Nvidia's PR lies. There is a reason why AMD gets all the console deals.


Thanks, pink panther. If amd can clean up their act on the linux drivers, I'll have a good look at their wares when the time comes.
 
We're talking about an architectual limitation on Nvidia's side. No matter the API, Nvidia cards will suck at GPGPU. For example if Nintendo released a new console with a Nvidia GPU, this console wouldn't be able to do async compute. The console maker's engineers know their stuff, however, and in contrast to most PC gamers, these people don't fall for Nvidia's PR lies. There is a reason why AMD gets all the console deals.

Could you be anymore obvious?
 

Arkanius

Member
Some users at Beyond3D have tested the Async performance of both the 980 Ti and the 7870XT

980 Ti

pJqBBDS.png


7870XT

nu2NDtM.png


980 TI can't run both tasks in parallel, they are ran in a sequence order.
Apparently, this is a huge blow for VR performance (Not much into VR yet). It seems Nvidia have lag issues that create nausea due this latency of having to run both tasks in sequence.
 

W!CK!D

Banned
Could you be anymore obvious?

I'm talking about the super annoying "we have to make everything proprietary because it is only possible on Nvidia GPUs" bullshit. And yeah, don't forget the obnoxious GTX 970 situation. Don't get me wrong: There are so many talented people working for Nvidia, but the Nvidia PR is just too aggressive. Nvidia PR is a bunch of liars.
 
Some users at Beyond3D have tested the Async performance of both the 980 Ti and the 7870XT

980 Ti

pJqBBDS.png


7870XT

nu2NDtM.png


980 TI can't run both tasks in parallel, they are ran in a sequence order.
Apparently, this is a huge blow for VR performance (Not much into VR yet). It seems Nvidia have lag issues that create nausea due this latency of having to run both tasks in sequence.

You got a link to these graphs?
 

wazoo

Member
The console maker's engineers know their stuff, however, and in contrast to most PC gamers, these people don't fall for Nvidia's PR lies. There is a reason why AMD gets all the console deals.

No, the reason is because they are dirt cheap and desperate in terms of contracts. That is also why AMD is bleeding money despite ps4 selling well.
 

KKRT00

Member
We're talking about an architectual limitation on Nvidia's side. No matter the API, Nvidia cards will suck at GPGPU.
What the hell? Do You even know what GPGPU means?
It's definitely not worsening the situation. Multiplat engines are still held back by PC graphics cards, though. In a perfect world, every PC would be a unified system with a single processor and a single RAM pool. The concept behind the PS4 system architecture is the future of gaming PCs.
Wait what? In what way exactly?
 

Qassim

Member
No, the reason is because they are dirt cheap and desperate in terms of contracts. That is also why AMD is bleeding money despite ps4 selling well.

I think a bigger reason is probably the fact AMD can offer their APUs, aside of going ARM, I don't think NVIDIA had anything to offer on the CPU side for the consoles.
 

Pimpbaa

Member
It's definitely not worsening the situation. Multiplat engines are still held back by PC graphics cards, though. In a perfect world, every PC would be a unified system with a single processor and a single RAM pool. The concept behind the PS4 system architecture is the future of gaming PCs.

Last time I checked, most home PCs only have a single processor. In fact, if you look at the APU in the PS4 and XB1 they actually have 2 quad core processors on the die not a single 8 core cpu. So that must the PS4 is not the future of gaming! Seriously though, what the fuck are you are on?
 
No, the reason is because they are dirt cheap and desperate in terms of contracts. That is also why AMD is bleeding money despite ps4 selling well.

Well they clearly traded making lots of money on the consoles deals for increased relevance in the overrall graphics market instead. That's starting to pay off now but whether that is worth more than bigger revenue to them in the long run is anyone's guess.
 
This situation is depressing.

You can see UE4 going out of its way for Gameworks, yet no sight of AsyncCompute on PC which is part of DX12.

Yeah Nvidia needs to address this, or it will slow the PC game industry down considerably.
AMD has a hold for their GPUs in consoles right now (even Nintendo NX, if the rumors are true), which means that async compute will become more and more of a thing, while PC developers won't even bother with it because they know only a small minority will be able to make use of it.
The effects of Nvidia's semi-monopoly are showing earlier than expected.
Also, just to be clear: fuck GPU turf wars. Got no time for that junk.
 

AmyS

Member
Reaching here but....AMD has apparently got priority on HBM2 manufacturing next year. We know that they are also more experienced with the new memory type as they had a year head-start on Nvidia. Add to that, they've apparently got some kind of architectural advantage with DX12 games.

What's that I see in the distance, AMD rising from the ashes next-gen? :p

da7z0pM.png


:p
 
Some users at Beyond3D have tested the Async performance of both the 980 Ti and the 7870XT

980 Ti

pJqBBDS.png


7870XT

nu2NDtM.png


980 TI can't run both tasks in parallel, they are ran in a sequence order.
Apparently, this is a huge blow for VR performance (Not much into VR yet). It seems Nvidia have lag issues that create nausea due this latency of having to run both tasks in sequence.
This goes against what we know how Maxwell 2 can run these tasks in parallel...
 

scoobs

Member
I'm kind of thinking about selling both my 980 ti and 970 and popping in a couple gigabyte 390s on new egg for $299 each.

Seriously nvidia dx12 games are starting to come out and the just released 980 ti is looking like a 2 year old 290x.

synonSr.png
 
Top Bottom