DX12 / Vulcan and new GPU architecture (?)

Page 3 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.
Status
Not open for further replies.

Headfoot

Diamond Member
Feb 28, 2008
4,444
641
126
Nearly identical code documentation certainly doesn't reflect nearly identical code! Why that would be a downright logical and reasoned conclusion, and we can't be having that here. No, here we need impassioned emotional tirades and scoring points for your team at any cost!
 

Sabrewings

Golden Member
Jun 27, 2015
1,942
35
51
Why that would be a downright logical and reasoned conclusion,

Except that it wouldn't. Similarly worded documentation doesn't reflect machine code in the slightest. I've programmed on enough different platforms to have seen extremely similar documentation to know this. Am I to expect that C++ and Java are nearly identical? Or how about Python and Falcon?
 

Headfoot

Diamond Member
Feb 28, 2008
4,444
641
126
If you can't tell the difference between "similarly worded documentation" and "I literally copy pasted key sections which implies that the API is identical" then I don't know what to tell you. All it looks like is that they renamed API calls and some of the return vars without changing their functionality from Mantle in places. Im sure there's more work in, just like Vulkan, but its pretty clear there are common roots. That is, if emotional investment doesn't cloud logical judgment.
 

Sabrewings

Golden Member
Jun 27, 2015
1,942
35
51
If you can't tell the difference between "similarly worded documentation" and "I literally copy pasted key sections which implies that the API is identical" then I don't know what to tell you. All it looks like is that they renamed API calls and some of the return vars without changing their functionality from Mantle in places. Im sure there's more work in, just like Vulkan, but its pretty clear there are common roots. That is, if emotional investment doesn't cloud logical judgment.

Logical judgment doesn't jump to conclusions especially when experience shows otherwise.

Without a better quality image, I can't read it word for word and only have the highlighted areas to go off of.

Also, since this is an error handling section (and quite unimportant to the actual performance of the software), do we have any actual code lengths that show such "copy/paste" documentation?

In this instance, my point stands true. A lot of software platforms that perform similar functions have similar error handling. More examples are needed before I'll be confinced.
 

Headfoot

Diamond Member
Feb 28, 2008
4,444
641
126
A lot of software platforms that perform similar functions have similar error handling. More examples are needed before I'll be confinced.

Fair enough. I've seen more than just that screenshot, that one is just the best example since it is highlighted etc. Further supporting the conclusion is the fact that MS and AMD before Mantle or DX12 existed collaborated heavily on the Xbone API for GCN. MS made a lot of noise pre release about how nice their API was. My guess is that the Xbone API was copy pasted into both Mantle and DX12. Such that Xbone = 1.0, Mantle = 2.0, DX12 and Vulkan = 3.0 versions of a similar codebase.
 

Sabrewings

Golden Member
Jun 27, 2015
1,942
35
51
Fair enough. I've seen more than just that screenshot, that one is just the best example since it is highlighted etc. Further supporting the conclusion is the fact that MS and AMD before Mantle or DX12 existed collaborated heavily on the Xbone API for GCN. MS made a lot of noise pre release about how nice their API was. My guess is that the Xbone API was copy pasted into both Mantle and DX12. Such that Xbone = 1.0, Mantle = 2.0, DX12 and Vulkan = 3.0 versions of a similar codebase.

Your theory on its evolution in my opinion is sound, but not necessarily indicative of preferring GCN. DX12 probably does share some code base in general functions that are not hardware specific (and from what I can read on that low resolution capture is all CPU handled code and therefore not vendor specific) with Mantle. However, that doesn't mean that they have simply slapped the rest of Mantle into a DX12 wrapper and called it a day. Not when 75% of the dGPU market isn't the hardware that it was originally based off, and then there's the Intel hardware to consider.

If I were in Microsoft's shoes, each vendor would have their own branch in the API of code translation to keep overhead low and compatibility high. It does mean more effort on their part and a larger install footprint, but it's the best way to go to achieve your objectives uniformly across the market and wildly different hardware.
 

Azix

Golden Member
Apr 18, 2014
1,438
67
91
I tried to verify the guide comparison pic and couldn't really. I stopped referencing it.

IMO mantle is very likely in dx12 but nobody is talking. Only real hint we got was repi on twitter I think. Though the internet is vast and google ain't perfect. Probably dx12 was originally just some form of dx11 with some more advanced features (never planned to be called "dx12" maybe). Would explain AMD going off to do mantle and they did say microsoft wasn't planning a dx12.

Fair enough. I've seen more than just that screenshot, that one is just the best example since it is highlighted etc. Further supporting the conclusion is the fact that MS and AMD before Mantle or DX12 existed collaborated heavily on the Xbone API for GCN. MS made a lot of noise pre release about how nice their API was. My guess is that the Xbone API was copy pasted into both Mantle and DX12. Such that Xbone = 1.0, Mantle = 2.0, DX12 and Vulkan = 3.0 versions of a similar codebase.

makes sense. I have seen some claim AMD built on the xbox api. Speculating on this stuff is not fun though. It's not that big a deal where it came from, just what it does. The mantle to DX thing really is just to justify mantle against people who bash amd for everything under the sun.
 
Last edited:

werepossum

Elite Member
Jul 10, 2006
29,873
463
126
If anything should convince you DX12 is going to favor GCN, it should be this:



Devs have praised GCN for DX12 publicly on tech forums, they even go so far as to highlight its ability for fine-grained execution of async compute beyond 1 thread/queue, to saturate the shaders.

But whether it has an impact in games, will depend on the game. Just because its a DX12 game does not equate to it using a lot of async compute features. It could simply be the low lvl CPU overhead reduction being employed.

The Starswarm demo favors NV, while the draw call 3dMark bench favors AMD. Basically synthetics tell us very little, we can only judge once a bunch of DX12 games hit.

Interesting times ahead, but not least because I am looking forward to Battlefront & Deus Ex!
That sounds reasonable. If a game is heavily shader-dependent AND one has very broad async capabilities, then it would make sense to do more async calculations even though many of them will be wasted. All it costs is some power and the currency in short supply will be clock cycles, not watts.

Your theory on its evolution in my opinion is sound, but not necessarily indicative of preferring GCN. DX12 probably does share some code base in general functions that are not hardware specific (and from what I can read on that low resolution capture is all CPU handled code and therefore not vendor specific) with Mantle. However, that doesn't mean that they have simply slapped the rest of Mantle into a DX12 wrapper and called it a day. Not when 75% of the dGPU market isn't the hardware that it was originally based off, and then there's the Intel hardware to consider.

If I were in Microsoft's shoes, each vendor would have their own branch in the API of code translation to keep overhead low and compatibility high. It does mean more effort on their part and a larger install footprint, but it's the best way to go to achieve your objectives uniformly across the market and wildly different hardware.
Agreed. But if the language is nearly identical then it's reasonable* to assume that the architecture will perform reasonably identically, assuming both Microsoft and AMD do good jobs on their respective parts.

* With the understanding of course that a perfectly reasonable assumption can still be completely wrong. Two implementations can easily be broadly similar in concept while performing radically differently on a particular architecture.
 

pj-

Senior member
May 5, 2015
483
251
136
Except that it wouldn't. Similarly worded documentation doesn't reflect machine code in the slightest. I've programmed on enough different platforms to have seen extremely similar documentation to know this. Am I to expect that C++ and Java are nearly identical? Or how about Python and Falcon?

I've programmed enough to know that documentation wouldn't be that similar if I wrote documentation for a piece of my own code two different times.

You could argue that DX12's error handling is similar to Mantle and MS plagiarized the documentation, but there is no chance in hell it is a coincidence.
 

3DVagabond

Lifer
Aug 10, 2009
11,951
204
106
Hmm, similar programming guides absolutely has to mean it's going to favor GCN! It can't possibly be just a high level document that has no direct representation of the low level code! By George, I think he's got it!

Just more unsubstantiated reaching, just like that patent for a high reliability memory controller for chip he is purporting as AMD's HBM controller patent. Similarites do not mean they are ==.

Those aren't just similar. They are the same. You can't use something else you disagree with to try and discredit it, either. There's zero logic in that.
 

Sabrewings

Golden Member
Jun 27, 2015
1,942
35
51
I've programmed enough to know that documentation wouldn't be that similar if I wrote documentation for a piece of my own code two different times.

You could argue that DX12's error handling is similar to Mantle and MS plagiarized the documentation, but there is no chance in hell it is a coincidence.

As I said earlier, it's entirely possible that since Microsoft had access to portions of Mantle from working on the XB1 API and used it as a starting point. Again, it doesn't meant that it is Mantle wrapped up and called DX12 as Silverforce implies. It's reaching.

Those aren't just similar. They are the same. You can't use something else you disagree with to try and discredit it, either. There's zero logic in that.

Do you have a better screen cap that I might be able to compare? That one is hard to read.

Also, I slipped that in to illustrate another example of where Silverforce draws conclusions that aren't supported because of similarities. In his world a Holden and Ford must be the same thing because they are quite similar.
 

ShintaiDK

Lifer
Apr 22, 2012
20,378
145
106
Where can one download the Mantle programming guide? Also when was the Mantle documentation finished? Because it could just as well be Mantle copying DirectX 12 documentation if anyone wants to play that game.
 

TheELF

Diamond Member
Dec 22, 2012
4,026
753
126
What does it even matter?
Don't forget that the xbone/ps4 8core APU architecture heavily favored AMD FX processors,we all know how that turned out.

At the end of the day it is much more important how fast you can run the big, code heavy, serial part then it is to simultaneously run a lot of fine-grained little tid bits.
 

Azix

Golden Member
Apr 18, 2014
1,438
67
91
What does it even matter?
Don't forget that the xbone/ps4 8core APU architecture heavily favored AMD FX processors,we all know how that turned out.

At the end of the day it is much more important how fast you can run the big, code heavy, serial part then it is to simultaneously run a lot of fine-grained little tid bits.

we haevn't seen how that turns out. dx11 surely didn't show us that. We'll see with dx12 probably
 

stateofmind

Senior member
Aug 24, 2012
245
2
76
www.glj.io
What does it even matter?
Don't forget that the xbone/ps4 8core APU architecture heavily favored AMD FX processors,we all know how that turned out.

At the end of the day it is much more important how fast you can run the big, code heavy, serial part then it is to simultaneously run a lot of fine-grained little tid bits.

You are talking AO here.. a GPU killer
I think that with more tools and less limitations, the 3D Engines will become much better and sophisticated (well, nothing too smart) and the hardware will be utilized more efficiently
 

werepossum

Elite Member
Jul 10, 2006
29,873
463
126
I'm guessing that AMD will benefit more both because of Mantle's similarity to DX12 and because of GCN's similarity to the consoles' GPUs, but it's worth pointing out that there are two wild cards here. First, it's possible for Microsoft to absolutely steal Mantle's concepts as whole cloth (no doubt with AMD's eager permission) and yet implement them in a manner less advantageous to AMD than AMD's own creation. And second, Microsoft has undoubtedly been working with and will be working with both NVidia and Intel to maximize performance on their architectures, so it's possible that NVidia and Microsoft will come up with something for them which works as well or even better. Granted, I don't see how, but smarter and much more knowledgeable people than I are working on it.
 

shady28

Platinum Member
Apr 11, 2004
2,520
397
126
Where can one download the Mantle programming guide? Also when was the Mantle documentation finished? Because it could just as well be Mantle copying DirectX 12 documentation if anyone wants to play that game.

http://www.amd.com/en-us/innovations/software-technologies/technologies-gaming/mantle#downloads


https://msdn.microsoft.com/en-us/library/windows/desktop/dn899121(v=vs.85).aspx

Conspiracy theories aside, no-one was able to verify it and Microsoft's manual doesn't look like that.
 

antihelten

Golden Member
Feb 2, 2012
1,764
274
126
If anyone wants a higher resolution image of the comparison, you can find it here

Also the reason why no one has been able to verify it might have something to do with this (the mantle stuff is very easy to find. It's on page 19-20):

 
Last edited:
Feb 19, 2009
10,457
10
76
I've programmed enough to know that documentation wouldn't be that similar if I wrote documentation for a piece of my own code two different times.

You could argue that DX12's error handling is similar to Mantle and MS plagiarized the documentation, but there is no chance in hell it is a coincidence.

Naysayers will say whatever they want contrary to evidence. It's what they do.

After Metal, Vulkan using Mantle as the foundation for their API, it's apparently too extreme or an impossibility for some to see that Mantle was also the foundation for DX12.

Really, who cares that the creator of Mantle (Johan @ DICE) says DX12 is basically deja-vu with Mantle (same as other devs). That devs say ACE engines are awesome for asynchronous compute in DX12. AMD must have had years of advance knowledge of DX12 specs for them to design their uarch with so many independent compute engines that was useless for DX11 and can only be taken advantage of in a Mantle-like API & DX12. How could they have known so many years ahead, when you factor in the time a uarch is developed to when its released and we know GCN is already old.

ps. The document was from the DX12 SDK for developers who had early access.
pss. I expect Pascal will have multiple compute engines this time, then NV will be ALL ABOARD the async compute train!

 
Last edited:

werepossum

Elite Member
Jul 10, 2006
29,873
463
126
Naysayers will say whatever they want contrary to evidence. It's what they do.

After Metal, Vulkan using Mantle as the foundation for their API, it's apparently too extreme or an impossibility for some to see that Mantle was also the foundation for DX12.

Really, who cares that the creator of Mantle (Johan @ DICE) says DX12 is basically deja-vu with Mantle (same as other devs). That devs say ACE engines are awesome for asynchronous compute in DX12. AMD must have had years of advance knowledge of DX12 specs for them to design their uarch with so many independent compute engines that was useless for DX11 and can only be taken advantage of in a Mantle-like API & DX12. How could they have known so many years ahead, when you factor in the time a uarch is developed to when its released and we know GCN is already old.

ps. The document was from the DX12 SDK for developers who had early access.
pss. I expect Pascal will have multiple compute engines this time, then NV will be ALL ABOARD the async compute train!

I thought everyone agreed that DX12 was conceptually just an extension of Mantle (albeit expanded to include NVidia and Intel architecture) and the question was only whether it is command-for-command equal or conceptually equal only?
 
Feb 19, 2009
10,457
10
76
I thought everyone agreed that DX12 was conceptually just an extension of Mantle (albeit expanded to include NVidia and Intel architecture) and the question was only whether it is command-for-command equal or conceptually equal only?

One would certainly hope so, else these individuals who think DX12 and Mantle are not similar display a certain lack of logic or just blinded by faith.
 

3DVagabond

Lifer
Aug 10, 2009
11,951
204
106
As I said earlier, it's entirely possible that since Microsoft had access to portions of Mantle from working on the XB1 API and used it as a starting point. Again, it doesn't meant that it is Mantle wrapped up and called DX12 as Silverforce implies. It's reaching.



Do you have a better screen cap that I might be able to compare? That one is hard to read.

Also, I slipped that in to illustrate another example of where Silverforce draws conclusions that aren't supported because of similarities. In his world a Holden and Ford must be the same thing because they are quite similar.



Also to the contention (not by you) that Mantle is a copy of DX12 (which is just pure obfuscation), does anyone think for a second that if AMD had Stolen/usurped DX12 and then handed it over to Khronos for Vulkan that MSFT wouldn't have sued them into oblivion? MSFT has leveraged DX to make Windows the far and away #1 gaming OS. They would never just give it away. Especially for use in another OS.

What does it even matter?
Don't forget that the xbone/ps4 8core APU architecture heavily favored AMD FX processors,we all know how that turned out.

At the end of the day it is much more important how fast you can run the big, code heavy, serial part then it is to simultaneously run a lot of fine-grained little tid bits.

True with DX11. Mantle, DX12, Vulkan, will address that. According to Johan, DX11 is "painfully serial" and that's it's biggest shortcoming.

I'm guessing that AMD will benefit more both because of Mantle's similarity to DX12 and because of GCN's similarity to the consoles' GPUs, but it's worth pointing out that there are two wild cards here. First, it's possible for Microsoft to absolutely steal Mantle's concepts as whole cloth (no doubt with AMD's eager permission) and yet implement them in a manner less advantageous to AMD than AMD's own creation. And second, Microsoft has undoubtedly been working with and will be working with both NVidia and Intel to maximize performance on their architectures, so it's possible that NVidia and Microsoft will come up with something for them which works as well or even better. Granted, I don't see how, but smarter and much more knowledgeable people than I are working on it.

The one limitation that AMD put on the use of Mantle by 3rd parties was that they couldn't do anything that would be detrimental to AMD's performance. I'm not sure how that would necessarily apply in this instance, but it might make it legally difficult to change any code that would end up running worse on AMD hardware than the original code.
 
Last edited:
Feb 19, 2009
10,457
10
76
MS makes amazing new API (by secretly partnering with DICE/Johan's team for years!), shares with AMD (or AMD steals it), and allow AMD to share it with Apple & Kronos..

About as possible as "mankind never landed on the moon" tinfoil theory.
 
Status
Not open for further replies.
sale-70-410-exam    | Exam-200-125-pdf    | we-sale-70-410-exam    | hot-sale-70-410-exam    | Latest-exam-700-603-Dumps    | Dumps-98-363-exams-date    | Certs-200-125-date    | Dumps-300-075-exams-date    | hot-sale-book-C8010-726-book    | Hot-Sale-200-310-Exam    | Exam-Description-200-310-dumps?    | hot-sale-book-200-125-book    | Latest-Updated-300-209-Exam    | Dumps-210-260-exams-date    | Download-200-125-Exam-PDF    | Exam-Description-300-101-dumps    | Certs-300-101-date    | Hot-Sale-300-075-Exam    | Latest-exam-200-125-Dumps    | Exam-Description-200-125-dumps    | Latest-Updated-300-075-Exam    | hot-sale-book-210-260-book    | Dumps-200-901-exams-date    | Certs-200-901-date    | Latest-exam-1Z0-062-Dumps    | Hot-Sale-1Z0-062-Exam    | Certs-CSSLP-date    | 100%-Pass-70-383-Exams    | Latest-JN0-360-real-exam-questions    | 100%-Pass-4A0-100-Real-Exam-Questions    | Dumps-300-135-exams-date    | Passed-200-105-Tech-Exams    | Latest-Updated-200-310-Exam    | Download-300-070-Exam-PDF    | Hot-Sale-JN0-360-Exam    | 100%-Pass-JN0-360-Exams    | 100%-Pass-JN0-360-Real-Exam-Questions    | Dumps-JN0-360-exams-date    | Exam-Description-1Z0-876-dumps    | Latest-exam-1Z0-876-Dumps    | Dumps-HPE0-Y53-exams-date    | 2017-Latest-HPE0-Y53-Exam    | 100%-Pass-HPE0-Y53-Real-Exam-Questions    | Pass-4A0-100-Exam    | Latest-4A0-100-Questions    | Dumps-98-365-exams-date    | 2017-Latest-98-365-Exam    | 100%-Pass-VCS-254-Exams    | 2017-Latest-VCS-273-Exam    | Dumps-200-355-exams-date    | 2017-Latest-300-320-Exam    | Pass-300-101-Exam    | 100%-Pass-300-115-Exams    |
http://www.portvapes.co.uk/    | http://www.portvapes.co.uk/    |