Jump to content

[Updated] Oxide responds to AotS Conspiracies, Maxwell Has No Native Support For DX12 Asynchronous Compute

 

The first test reveals just how parallel AMD deals with compute, vs Nvidia's serial approach. Not surprising.

 

The second test should be taken with a large grain of salt, as it is a controlled and predictable async compute test, which Nvidia's scheduler can handle easily. Also, not surprising.

 

The real test is when used in real time, with a game engine that is throwing unpredictable and random compute and graphic tasks at the graphic card, and the resulting latency.

R9 3900XT | Tomahawk B550 | Ventus OC RTX 3090 | Photon 1050W | 32GB DDR4 | TUF GT501 Case | Vizio 4K 50'' HDR

 

Link to comment
Share on other sites

Link to post
Share on other sites

snip

no, the issue at hand was if Maxwell can or can't do async compute - and that's it

how it's handled, that's another story and a different topic

to read from Unreal Engine 4.9 documentation: https://docs.unrealengine.com/latest/INT/Programming/Rendering/ShaderDevelopment/AsyncCompute/index.html

AsyncCompute should be used with caution as it can cause more unpredicatble performance and requires more coding effort for synchromization.

AMD's PR machine is in full swing and it's gaining traction because they know nVidia doesn't respond to situations like this, unless it gets very dramatic

a lot of idiots already started returning their GTX video cards because of this

Link to comment
Share on other sites

Link to post
Share on other sites

no, the issue at hand was if Maxwell can or can't do async compute - and that's it

how it's handled, that's another story and a different topic

to read from Unreal Engine 4.9 documentation: https://docs.unrealengine.com/latest/INT/Programming/Rendering/ShaderDevelopment/AsyncCompute/index.html

 

 

I don't think (at least I'm not arguing) that Nvidia can't do async compute. the problem-as you say-is how its handled with Maxwell. Maxwell seudo-supports async compute, but suffers latency penalties when used in gaming. The discussion was always about how well Maxwell could handle async compute in a real time gaming environment. 

R9 3900XT | Tomahawk B550 | Ventus OC RTX 3090 | Photon 1050W | 32GB DDR4 | TUF GT501 Case | Vizio 4K 50'' HDR

 

Link to comment
Share on other sites

Link to post
Share on other sites

Maxwell seudo-supports async compute

no, that's the wrong way to think - does Maxwell support async compute? yes! not pseudo nothing

Oxide's benchmark was clearly programmed with async path to be benefic towards GCN and not towards Maxwell - it is a AMD sponsored developer after all; if nVidia would be the sponsor, then the table would be reversed .. no question

Link to comment
Share on other sites

Link to post
Share on other sites

............

 

AMD's PR machine is in full swing and it's gaining traction because they know nVidia doesn't respond to situations like this, unless it gets very dramatic

a lot of idiots already started returning their GTX video cards because of thisI'll

I'll laugh my ass off if these "benchmarks" prove to be nothing more than AMD propaganda. In return making people returning their cards even more of a dumbass than they already were.

CPU: Intel Core i7 7820X Cooling: Corsair Hydro Series H110i GTX Mobo: MSI X299 Gaming Pro Carbon AC RAM: Corsair Vengeance LPX DDR4 (3000MHz/16GB 2x8) SSD: 2x Samsung 850 Evo (250/250GB) + Samsung 850 Pro (512GB) GPU: NVidia GeForce GTX 1080 Ti FE (W/ EVGA Hybrid Kit) Case: Corsair Graphite Series 760T (Black) PSU: SeaSonic Platinum Series (860W) Monitor: Acer Predator XB241YU (165Hz / G-Sync) Fan Controller: NZXT Sentry Mix 2 Case Fans: Intake - 2x Noctua NF-A14 iPPC-3000 PWM / Radiator - 2x Noctua NF-A14 iPPC-3000 PWM / Rear Exhaust - 1x Noctua NF-F12 iPPC-3000 PWM

Link to comment
Share on other sites

Link to post
Share on other sites

I'll laugh my ass off if these "benchmarks" prove to be nothing more than AMD propaganda. In return making people returning their cards even more of a dumbass than they already were.

Hey, let people return their GPU's. I'll snag a used GTX 980 Ti for cheap.

My (incomplete) memory overclocking guide: 

 

Does memory speed impact gaming performance? Click here to find out!

On 1/2/2017 at 9:32 PM, MageTank said:

Sometimes, we all need a little inspiration.

 

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

my guess is Oxyde coded the async shaders with OpenCL, and no surprise .. nVidia doesn't do well with OpenCL, but it does very well with CUDA

ultimately their decision to slack on OpenCL development will bite them in the ass

Link to comment
Share on other sites

Link to post
Share on other sites

my guess is Oxyde coded the async shaders with OpenCL, and no surprise .. nVidia doesn't do well with OpenCL, but it does very well with CUDA

ultimately their decision to slack on OpenCL development will bite them in the ass

Don't quote ME on this but I could have sworn someone in the OC.net thread was talking about DirectCompute in DX12. But, I'd have to reread thru 150 pages to find it and if it was making mention of this specific instance.

Link to comment
Share on other sites

Link to post
Share on other sites

my guess is Oxyde coded the async shaders with OpenCL, and no surprise .. nVidia doesn't do well with OpenCL, but it does very well with CUDA

ultimately their decision to slack on OpenCL development will bite them in the ass

I'm not a dev, but is it possible to make a path to use OpenCL for AMD drivers, CUDA for NVidia?

Link to comment
Share on other sites

Link to post
Share on other sites

I'm not a dev, but is it possible to make a path to use OpenCL for AMD drivers, CUDA for NVidia?

yes it is, but will AMD be OK with it?

the real problem - it's a whole lot of work to be done writing two different paths because ultimately it can end in creating two game executables, one for nVidia other for AMD

Link to comment
Share on other sites

Link to post
Share on other sites

Don't quote ME on this but I could have sworn someone in the OC.net thread was talking about DirectCompute in DX12. But, I'd have to reread thru 150 pages to find it and if it was making mention of this specific instance.

direct compute exists in DX since DX10, that's not the issue

DX11-FeatureLevels-640x328.png

my question: is Async Shaders a core component of DX12 (meaning mandatory) or is one of the tiered optional ones - I tried to google it, but because of this "drama" there's a lot of noise

Link to comment
Share on other sites

Link to post
Share on other sites

how it's handled, that's another story and a different topic

to read from Unreal Engine 4.9 documentation: https://docs.unrealengine.com/latest/INT/Programming/Rendering/ShaderDevelopment/AsyncCompute/index.html

Only for Nvidia gpu it seem, Kollock even mentioned that hell break loose when they try to enable async compute for Maxwell.

| Intel i7-3770@4.2Ghz | Asus Z77-V | Zotac 980 Ti Amp! Omega | DDR3 1800mhz 4GB x4 | 300GB Intel DC S3500 SSD | 512GB Plextor M5 Pro | 2x 1TB WD Blue HDD |
 | Enermax NAXN82+ 650W 80Plus Bronze | Fiio E07K | Grado SR80i | Cooler Master XB HAF EVO | Logitech G27 | Logitech G600 | CM Storm Quickfire TK | DualShock 4 |

Link to comment
Share on other sites

Link to post
Share on other sites

direct compute exists in DX since DX10, that's not the issue

my question: is Async Shaders a core component of DX12 (meaning mandatory) or is one of the tiered optional ones - I tried to google it, but because of this "drama" there's a lot of noise

It would appear it is one of the mandatory functions of Tier 2 or better DX12 support. Intel's GPU's at the time of the render did not support it at all, and were Tier 1, and the nVidia GPU's that did not support it at all were Tier 1, but the Tier 2's and 3's supported it.

o4wOYxm.png?1

 

But, then there are conflicting reports, some say certain features ARE supported or are NOT supported by the same GPU's. Unless and until Microsoft validates for sure the individual GPU's we may not know exact tiers.

Link to comment
Share on other sites

Link to post
Share on other sites

how it's handled, that's another story and a different topic

to read from Unreal Engine 4.9 documentation: https://docs.unrealengine.com/latest/INT/Programming/Rendering/ShaderDevelopment/AsyncCompute/index.html

Only for Nvidia gpu it seem, Kollock even mentioned that hell break loose when they try to enable async compute for Maxwell.

 

nice gif of taeyeon

Wanna hang out with me and people like @Theslsamg, @ Ssoele, @BENTHEREN, @Lanoi, @Whiskers, @_ASSASSIN_, @Looney, @WunderWuffle, and @nsyedhasan. Well.... Check out: http://linustechtips.com/main/topic/48484-unofficial-linustechtips-teamschnitzel-server-teamspeak/

Link to comment
Share on other sites

Link to post
Share on other sites

direct compute exists in DX since DX10, that's not the issue

imagegifpng.jpg

my question: is Async Shaders a core component of DX12 (meaning mandatory) or is one of the tiered optional ones - I tried to google it, but because of this "drama" there's a lot of noise

 

it can be disabled, so its not a mandatory feature.

 

It a lengthy read but here's microsoft's official documentation on it: https://msdn.microsoft.com/en-us/library/windows/desktop/dn899217(v=vs.85).aspx

R9 3900XT | Tomahawk B550 | Ventus OC RTX 3090 | Photon 1050W | 32GB DDR4 | TUF GT501 Case | Vizio 4K 50'' HDR

 

Link to comment
Share on other sites

Link to post
Share on other sites

it can be disabled, so clearly its not a mandatory feature.

 

It a lengthy read but here's microsoft's official documentation on it: https://msdn.microsoft.com/en-us/library/windows/desktop/dn899217(v=vs.85).aspx

Not mandatory to make use of DX12, but an integral part OF DX12, and apparently required for a certain tier level of support for Feature Level 0 in DX12.

Link to comment
Share on other sites

Link to post
Share on other sites

no, that's the wrong way to think - does Maxwell support async compute? yes! not pseudo nothing

Oxide's benchmark was clearly programmed with async path to be benefic towards GCN and not towards Maxwell - it is a AMD sponsored developer after all; if nVidia would be the sponsor, then the table would be reversed .. no question

 

 

Maxwell supporting async compute, depending on how it works in practice, could be worse than saying the 970 has 4GB of video memory (the end - without any qualifications).

 

Why?  Because up to the 3.5 GB mark, the 970 performed as one might expect and people did not get hit hard for what was left unsaid about how the memory worked.   With Asynch compute, not being able to perform compute and general graphics tasks in parallel means that your cards don't use asynchronous compute in the ways that give the desired benefits.  That's a problem.  You can say that games that design their engines to utilize asynchronous  compute are being paid off by amd, but that's like saying any engine developer that actually makes use of a core dx12 feature is being paid off by a specific gpu company.  That is part of the god damn spec.  If nvidia cards can't deal with it as well, then they need to take their lumps just like amd did when dx11 cpu performance.

 

 

I've read that Unreal Engine 4 does not rely as heavily on asynch compute, in that case I very much do believe that part of the reason why is that they ARE sponsored up the ass by nvidia and gameworks tie ins, and if using the more modern style of rendering - asynch compute performs worse for nvidia, then they may as well not focus so heavily on that.  Stick to more serialized workloads, where their sugar daddy nvidia performs better.

I am impelled not to squeak like a grateful and frightened mouse, but to roar...

Link to comment
Share on other sites

Link to post
Share on other sites

Maxwell supporting async compute, depending on how it works in practice, could be worse than saying the 970 has 4GB of video memory (the end - without any qualifications).

 

Why?  Because up to the 3.5 GB mark, the 970 performed as one might expect and people did not get hit hard for what was left unsaid about how the memory worked.   With Asynch compute, not being able to perform compute and general graphics tasks in parallel means that your cards don't use asynchronous compute in the ways that give the desired benefits.  That's a problem.  You can say that games that design their engines to utilize asynchronous  compute are being paid off by amd, but that's like saying any engine developer that actually makes use of a core dx12 feature is being paid off by a specific gpu company.  That is part of the god damn spec.  If nvidia cards can't deal with it as well, then they need to take their lumps just like amd did when dx11 cpu performance.

 

 

I've read that Unreal Engine 4 does not rely as heavily on asynch compute, in that case I very much do believe that part of the reason why is that they ARE sponsored up the ass by nvidia and gameworks tie ins, and if using the more modern style of rendering - asynch compute performs worse for nvidia, then they may as well not focus so heavily on that.  Stick to more serialized workloads, where their sugar daddy nvidia performs better.

 

It will definitely be interesting with ARK dx12 patch (I own and play ARK, and there does appear to be a number of compute based effects in use). If they disable AC completely, it will only add confirmation that Nvidia can't properly execute graphic and compute tasks in parallel. If they enable it only for AMD, same thing. If they leave it enabled for Maxwell and there aren't any problems, its a win-win, and the industry can move forward. I don't see the last scenario playing out, but it would be nice. 

R9 3900XT | Tomahawk B550 | Ventus OC RTX 3090 | Photon 1050W | 32GB DDR4 | TUF GT501 Case | Vizio 4K 50'' HDR

 

Link to comment
Share on other sites

Link to post
Share on other sites

It will definitely be interesting with ARK dx12 patch (I own and play ARK, and there does appear to be a number of compute based effects in use). If they disable AC completely, it will only add confirmation that Nvidia can't properly execute graphic and compute tasks in parallel. If they enable it only for AMD, same thing. If they leave it enabled for Maxwell and there aren't any problems, its a win-win, and the industry can move forward. I don't see the last scenario playing out, but it would be nice.

I'm guessing they will enable AC by default in DX12. Or they would be underutilizing not only AMD but upcoming Nvidia Pascal GPUs. They can specifically detect Maxwell / kepler GPUs and disable it if necessary.
Link to comment
Share on other sites

Link to post
Share on other sites

no, the issue at hand was if Maxwell can or can't do async compute - and that's it

how it's handled, that's another story and a different topic

to read from Unreal Engine 4.9 documentation: https://docs.unrealengine.com/latest/INT/Programming/Rendering/ShaderDevelopment/AsyncCompute/index.html

AMD's PR machine is in full swing and it's gaining traction because they know nVidia doesn't respond to situations like this, unless it gets very dramatic

a lot of idiots already started returning their GTX video cards because of this

Just saw this in guru3d forums. Well, basically I'm pissed - "don't use parallel programming, because resource management is tougher". Can't add anything else.

 

About nVidia taking it like a man - yeah right. That's why they demanded async computing to be disabled by Oxide and telling developers through Unreal team not to use it, because it's harder to code. It's a big f**k up from the green team and they just keep adding oil to the fire with their PR stunts with developers. 

P.S. AMD also had it's share of s**t storm with rebranding, false claims for overclocking the Fury line and so on - so they are also not innocent...

Link to comment
Share on other sites

Link to post
Share on other sites

snip

it is not that simple at all

the main fault in all this is MS implementing different tiers of DX12 - and I suspect all 4 (MS, AMD, Intel and nVidia) of them had a hand in this

the problem is that none of the current hardware is supporting DX12 , fully; and this is biggest issue

if a developer creates a game using DX12 tier3, then the lower tiered GPUs will have to emulate the functions, or simply not work at all

Async Compute is there in nVidia's Maxwell, the TESLA accelerators use it currently

the big question is why Oxyde's benchmark can't utilize it - is it because Maxwell can't render async shaders and "normal" shaders in the same pipeline? or is it because Oxyde coded the game specifically for GCN

Link to comment
Share on other sites

Link to post
Share on other sites

So AMD equaled with NVidia in the first DX12 Title. Wow, NVidia you realy messed up not to be 20% ahead like all the Years bevore.

And since its far too soon to shitstorm this Topic, we all should go crazy about it.

Bga6o7E.png

CPU i7 6700k MB  MSI Z170A Pro Carbon GPU Zotac GTX980Ti amp!extreme RAM 16GB DDR4 Corsair Vengeance 3k CASE Corsair 760T PSU Corsair RM750i MOUSE Logitech G9x KB Logitech G910 HS Sennheiser GSP 500 SC Asus Xonar 7.1 MONITOR Acer Predator xb270hu Storage 1x1TB + 2x500GB Samsung 7200U/m - 2x500GB SSD Samsung 850EVO

Link to comment
Share on other sites

Link to post
Share on other sites

Not mandatory to make use of DX12, but an integral part OF DX12, and apparently required for a certain tier level of support for Feature Level 0 in DX12.

if it's "optional", then something smells fishy because Oxyde claimed nVidia asked them to disable it

but, if it's "optional" why Oxyde hasn't disabled it?!

Link to comment
Share on other sites

Link to post
Share on other sites

if it's "optional", then something smells fishy because Oxyde claimed nVidia asked them to disable it

but, if it's "optional" why Oxyde hasn't disabled it?!

Oxyde tried to use async compute at first, because the driver reports that the feature is available (otherwise they wouldn't have tried to use it in the first place), but perfomance was worse than without it, so they disabled it for Nvidia GPUs specifically to increase perfomance.

The thing that Nvidia asked them to disable wasn't async compute, they rather wanted them to change game settings like MSAA which would change the payload and effectively be a whole different benchmark, Oxyde refused to do that, it wasn't directly related to async compute.

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×