How much influence did Mantle have on Vulkan/DX12?

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

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
So you accept that AMD worked with MS to develop DX12 at some capacity--obviously this would be the same team at AMD involved in Mantle--but you remain certain that in no way DX12 and Mantle have common and possibly shared design?

I remain certain that AMD wasn't the only IHV to give their input to DX12, and that it was a massive collaboration between not only IHVs, but game developers as well like Epic. This is really what this discussion is about. AMD supporters are desperately trying to prove that if it had not been for Mantle, DX12 would not have come; which is another way of saying that had it not been for AMD, we would not have DX12. They need this sentiment to feel good, because Mantle was DOA as soon as DX12 was announced. Mantle might be the shortest lived API in PC history.
 

Phynaz

Lifer
Mar 13, 2006
10,140
819
126
So you accept that AMD worked with MS to develop DX12 at some capacity--obviously this would be the same team at AMD involved in Mantle--but you remain certain that in no way DX12 and Mantle have common and possibly shared design?

Why would it have to be the same team?
 

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
You're right, it's just that you're the one muddling semantics here. If AMD and Mantle had a significant influence on DX12, that means that DX12 would be significantly different if AMD had not developed Mantle. In other words, if Mantle had not been developed, DX12 as we know it would not exist.

Unless you're an oracle, you have no way of verifying this at all.. This is just pure supposition on your part.

They're new for graphics APIs when the norm has been high level APIs for decades. The theory of the benefit of such APIs has been known for some time, sure, but developers and publishers need more than theory, they need to see practical benefits. That's where Mantle came in - it was the proof of concept of sorts that pushed Microsoft and Khronos to follow suit.

If low level APIs are new for graphics, then I really have to wonder what developers have been using to program console games since time immemorial... :smirk:

You make it sound as though developers are neophytes when it comes to low level APIs or something, when nothing could be further from the truth. Certain developers like Epic, DICE, Crytek etcetera wanted more access to hardware on the PC platform, and so Microsoft and the IHVs gave it to them. This was the motivation behind the creation of both DX12 and Mantle..

In fact, it was DICE's lead rendering architect that was mostly responsible for Mantle if I'm not mistaken..
 
Last edited:

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
OK, it's clear that none of us are going to change our minds about this topic. I'm going to post this one last piece of evidence, which I consider to be quite strong. It comes from Tech Report, and their investigation into DX12's inception:

The question, then, almost asks itself. Did AMD's work on Mantle motivate Microsoft to introduce a lower-level graphics API?

When I spoke to AMD people a few hours after the D3D12 reveal, I got a strong sense that that wasn't the caseand that it was developers, not AMD, who had spearheaded the push for a lower-level graphics API on Windows. Indeed, at the keynote, Microsoft's Development Manager for Graphics, Anuj Gosalia, made no mention of Mantle. He stated that "engineers at Microsoft and GPU manufacturers have been working at this for some time," and he added that D3D12 was "designed closely with game developers."

The day after the D3D12 keynote, I got on the phone with Tony Tamasi, Nvidia's Senior VP of Content and Technology. Tamasi painted a rather different picture than Corpus. He told me D3D12 had been in in the works for "more than three years" (longer than Mantle) and that "everyone" had been involved in its development.

Tamasi went on to note that, since development cycles for new GPUs span "many years," there was "no possible way" Microsoft could have slapped together a new API within six months of Mantle's public debut.

Source.

The last paragraph is perhaps the most important piece of evidence, which is why I highlighted it in red and underlined it. Graphics hardware development cycles occur over the span of years. For us to have DX12 capable hardware, means that DX12 itself would have had to have been planned over a similar timeframe as previous and current DX12 GPUs..

If this doesn't prove what I've been saying, then nothing will..
 

Red Hawk

Diamond Member
Jan 1, 2011
3,266
169
106
Unless you're an oracle, you have no way of verifying this at all.. This is just pure supposition on your part.

So...you are saying AMD and Mantle had no influence on DirectX 12?

If low level APIs are new for graphics, then I really have to wonder what developers have been using to program console games since time immemorial... :smirk:

You make it sound as though developers are neophytes when it comes to low level APIs or something, when nothing could be further from the truth. Certain developers like Epic, DICE, Crytek etcetera wanted more access to hardware on the PC platform, and so Microsoft and the IHVs gave it to them. This was the motivation behind the creation of both DX12 and Mantle..

In fact, it was DICE's lead rendering architect that was mostly responsible for Mantle if I'm not mistaken..

Oh good grief. I was talking in the context of PC game development. Stop being obtuse.

OK, it's clear that none of us are going to change our minds about this topic. I'm going to post this one last piece of evidence, which I consider to be quite strong. It comes from Tech Report, and their investigation into DX12's inception:

Source.

The last paragraph is perhaps the most important piece of evidence, which is why I highlighted it in red and underlined it. Graphics hardware development cycles occur over the span of years. For us to have DX12 capable hardware, means that DX12 itself would have had to have been planned over a similar timeframe as previous and current DX12 GPUs..

If this doesn't prove what I've been saying, then nothing will..

Well given that no one in this thread is saying that DX12 was slapped together immediately after Mantle's public debut...your "evidence" has nothing to do with contradicting what we're saying.
 
  • Like
Reactions: DarthKyrie

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
So...you are saying AMD and Mantle had no influence on DirectX 12?

AMD had an influence on DX12, but Mantle did not. The similarities between Mantle and DX12 stem from the fact that both APIs target modern GPUs.

The evidence I've presented tells me that it was the game developers and not the IHVs that were mostly responsible for getting Microsoft to come up with DX12. In fact, Mantle was Johan Andersson's idea, and NOT AMD's as this German interview with Andersson implies. To be fair though, Andersson does give major props to AMD for helping him achieve his vision. So if we are to give credit to AMD, its for their realization that low level access on PC hardware was something that must be implemented if developers wanted to truly exploit the potential of modern CPUs and GPUs.

Some noteworthies from the interview:
Andersson: About five years ago we started to think about it. Back then we had already gained experience with consoles and also wanted for the PC, a similar type of access and programmability. We talked with several companies, including Intel and Nvidia.

This comment supports the timeline and the notion that low level access is something that has been gaining momentum over the course of many years, and didn't just materialize out of nowhere.. Also, it shows that programming for low level APIs on consoles isn't somehow mutually exclusive to programming for low level APIs on PCs as you've implied.

No proof of concept required, as developers had been doing it for years.

Oh good grief. I was talking in the context of PC game development. Stop being obtuse.

Right, and you really think programming a console game with a low level API like the PS4's GNM, and the same game with DX12 on PC requires a different skill set? :laughing:

And yet ironically, some of your buddies spent the last few pages trying to convince me that Mantle and the Xbox One API shared the same codebase. :expressionless:

Well given that no one in this thread is saying that DX12 was slapped together immediately after Mantle's public debut...your "evidence" has nothing to do with contradicting what we're saying.

Actually, that's exactly what they were claiming in a way. For Mantle to have inspired DX12 as several in this thread have claimed or implied (including yourself), Microsoft would have needed to design, develop and QA DX12 over the course of a few months, rather than years.

Because as Tony Tamasi stated in that link, GPU development cycles occur over the span of years and not months.
 
Last edited:

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
OK, so now with that latest piece of evidence, we now know that Mantle wasn't AMD idea, though they did take the initiative among the IHVs. We also now know that the idea behind implementing low level access on PC hardware had been fomenting for years; as early as 2008 if Andersson is to be believed.

So basically, we can take this to conclude that DX12 in it's current form would have come regardless of whether Mantle had come about, because the main impetus behind low level access on PC hardware was coming from game developers, and not from Microsoft or the IHVs.
 

Bacon1

Diamond Member
Feb 14, 2016
3,430
1,018
91
@Carfax83 why do you keep making up arguments and misrepresenting everything everyone else is saying in this thread?

No one claimed that AMD created Mantle by themselves. Its been known forever that DICE and AMD worked together and that it was developers who wanted low level APIs. AMD has said as much many many many times.

http://www.bit-tech.net/hardware/graphics/2011/03/16/farewell-to-directx/1 from Early 2011

No one is saying that DX12 is 100% Mantle, just that Mantle helped to shape DX12.

Mantle was designed as a prototype to show that lower level APIs were wanted and would work well and they proved that. From the beginning they said that they wanted Mantle or an API very similar to it to take hold. They never wanted to be exclusive low level API. They were also going to open it up but Nvidia refused to use it. That made it DOA. We know why Nvidia refused to use it, even their latest Maxwell cards never got async compute support which is one of the major new features in DX12. Now if Nvidia had been working with Microsoft on DX12 and async compute for years, why did Maxwell not have actual support for it? Even Pascal doesn't, just a better preemption. These are the core features of DX12 to make better game engines.

Its also the core of Vulkan and also used for LiquidVR, so nothing was wasted. Khronos has thanked AMD over and over because it saved them a ton of time.

Read the quotes from this post:

https://forums.anandtech.com/thread...e-on-vulkan-dx12.2486843/page-2#post-38481827
 

thesmokingman

Platinum Member
May 6, 2010
2,302
231
106
OK, so now with that latest piece of evidence, we now know that Mantle wasn't AMD idea, though they did take the initiative among the IHVs. We also now know that the idea behind implementing low level access on PC hardware had been fomenting for years; as early as 2008 if Andersson is to be believed.

So basically, we can take this to conclude that DX12 in it's current form would have come regardless of whether Mantle had come about, because the main impetus behind low level access on PC hardware was coming from game developers, and not from Microsoft or the IHVs.

And this is a revelation for you?? Everyone knows AMD has been saying it for years, they created Mantle because the devs asked them to. Seriously... this guy.
 
  • Like
Reactions: DarthKyrie

Red Hawk

Diamond Member
Jan 1, 2011
3,266
169
106
AMD had an influence on DX12, but Mantle did not. The similarities between Mantle and DX12 stem from the fact that both APIs target modern GPUs.

The evidence I've presented tells me that it was the game developers and not the IHVs that were mostly responsible for getting Microsoft to come up with DX12. In fact, Mantle was Johan Andersson's idea, and NOT AMD's as this German interview with Andersson implies. To be fair though, Andersson does give major props to AMD for helping him achieve his vision. So if we are to give credit to AMD, its for their realization that low level access on PC hardware was something that must be implemented if developers wanted to truly exploit the potential of modern CPUs and GPUs.

Some noteworthies from the interview:


This comment supports the timeline and the notion that low level access is something that has been gaining momentum over the course of many years, and didn't just materialize out of nowhere.. Also, it shows that programming for low level APIs on consoles isn't somehow mutually exclusive to programming for low level APIs on PCs as you've implied.

No proof of concept required, as developers had been doing it for years.

...yes. We know that certain developers were pushing for it, particularly Dice. That doesn't mean that all developers were pushing for it, or everyone would have jumped on the Mantle, Vulkan, and DX12 trains all at once. This does not take away from the fact that AMD was the first to actually respond to said developers and put work into creating a low-level API. As another comment put it, AMD were the ones who woke up and smelled competitive advantage while other IHVs weren't bothering.

Right, and you really think programming a console game with a low level API like the PS4's GNM, and the same game with DX12 on PC requires a different skill set? :laughing:

And yet ironically, some of your buddies spent the last few pages trying to convince me that Mantle and the Xbox One API shared the same codebase. :expressionless:

Are you dense? No, I don't think that. I'm saying that the norm on PCs was to code using high-level APIs; it was easy, it's what PC programmers were used to, and it's all they had to work with. Mantle was revolutionary because, as AMD_Robert notes in that Reddit AMA, there were no graphics APIs on PC that behaved like that:

"There's just an incredibly deep level of access and control that was entirely missing on the PC, because there were no graphics APIs that remotely behaved like what the consoles offered."

So when you said,

"You make it sound as though low level APIs are something new in PC land, but it's not. "

You are wrong. Flat. Out. Wrong.

Actually, that's exactly what they were claiming in a way. For Mantle to have inspired DX12 as several in this thread have claimed or implied (including yourself), Microsoft would have needed to design, develop and QA DX12 over the course of a few months, rather than years.

Because as Tony Tamasi stated in that link, GPU development cycles occur over the span of years and not months.

No! No they wouldn't! You seem to think that all of DX12's features would have been locked in on Day 1 of development. Software development does. Not. Work. Like. That. DX12 could have been in development simultaneously with Mantle, and Microsoft could have been aware of the direction AMD was going with Mantle because of how closely AMD and Microsoft work on the Xbox One and Direct X. You yourself quoted the part of the Mantle FAQ that said AMD made the full spec of Mantle available to Microsoft from the early days! Seeing the work that AMD was doing with Mantle and the developer support for it could have then influenced Microsoft to add those same features to DirectX, possibly before Mantle was even publicly announced. This scenario does not involve Microsoft "slapping together" DX12 at any point, so no, that is NOT what we were "really saying". Why is this such a hard concept for you to wrap your brain around?

Also I've specifically said I don't prefer the word "inspired" in this case. To you. Multiple times. So please, stop twisting my own words when talking to me.
 

GaiaHunter

Diamond Member
Jul 13, 2008
3,732
432
126
OK, so now with that latest piece of evidence, we now know that Mantle wasn't AMD idea, though they did take the initiative among the IHVs. We also now know that the idea behind implementing low level access on PC hardware had been fomenting for years; as early as 2008 if Andersson is to be believed.

So basically, we can take this to conclude that DX12 in it's current form would have come regardless of whether Mantle had come about, because the main impetus behind low level access on PC hardware was coming from game developers, and not from Microsoft or the IHVs.

The reason Mantle existed was because there was a type of DX12 on the Xbone.

That XBone DX12 is a low level API targeting a current generation GPU architecture.

What AMD did was simply leverage the fact they did cooperate with MS to develop that low level API and bring the same kind of low level API that exist in consoles to PC hardware, something that apparently some developers wanted.

As you say the main impetus for low level API were game developers.
If DX12 was assured to have those features in the PC version why did some game developers actually spent resources in a new low level API when DX12 was around the corner?
Surely, at least the big guys, would know what kind of feature MS intended to include on DX12 for PC.

So yeah, MS wouldn't have time to integrate those features in DX12 if they had to start from scratch after Mantle was announced. But MS didn't have to - the work was already done for the XBone DX12.

Also, how long was Mantle in development?
The reason Mantle arrived without a whiff of being in development for years was because it wasn't in development for years, at least not as Mantle. Just as XBone DX12 API.

AMD didn't create something new, it just played its cards (apparently and maybe surprisingly they had some) and guaranteed the outcome they wanted - something that leveraged the features in their hardware and potentially benefited from the optimizations games already receive for consoles.

Mantle was developed alongside the XBone DX12 API. That was on of the AMD cards
That PS4 and XBone had their APUs was the other.
 
Last edited:
  • Like
Reactions: DarthKyrie

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
@Carfax83 why do you keep making up arguments and misrepresenting everything everyone else is saying in this thread?

No one claimed that AMD created Mantle by themselves. Its been known forever that DICE and AMD worked together and that it was developers who wanted low level APIs. AMD has said as much many many many times.

Right... So you're telling me that nobody in this thread, or in the other thread that spawned this thread has insinuated that AMD should get credit for "setting the trend?" :grinning:

Do I really need to link to those posts?

Nobody mentioned developers at all, until I started bringing it up.. It's been assumed by a lot of people that Mantle was an AMD project, but it really wasn't.

No one is saying that DX12 is 100% Mantle, just that Mantle helped to shape DX12.

LOL, this is too funny. That's NOT what people have been saying. :laughing: Here are some examples of various quotes from this thread alone:

it's pretty obvious which hardware mantle targeted, and how that same targeted gpu architecture has more basic feature support on all 2 ,dx12/vlk apis which derived from mantle. repped by you

Mantle 1.0 functionality(feature set) is in DX12, Vulkan, Metal. They work on low-level the same way, and achieve exactly the same goals. Because all of them have used Mantle in some way. repped by you

As far as I know the story... AMD said many years ago, that the command buffer management in D3D11 is not useful for the many-core era, and they have a much more efficient concept that should work for the PC. Microsoft wants them to prove their claim, and they did it a year later or so. This prototype was the main building block of D3D12. The idea of Mantle came after this, because the lead programer of Dice didn't want to wait for D3D12, and he asked AMD to give him an explicit API for a new project (BF4). AMD said OK, and they also build an API for the same prototype. This was a good idea after all, because Vulkan is heavily based on the Mantle specification. repped by you and Red Hawk

Microsoft goes to AMD to produce Xbox One (Semi-custom AMD hardware) based on GCN. To program Xbox One, you need an API. Both parties work together as they both have a role in creating an API to make the Xbox work. Both parties have the fundamental low-level API now built because it was built for Xbox One. AMD uses it as Mantle. MS works on it further to make it more generalized as DX12. repped by you and Red Hawk

I can keep going if you want, but the point is, people have been saying a LOT more than just Mantle helped to shape DX12. Now are you going to continue this charade and try to make it seem as though you, and many others didn't insinuate that Mantle was the Godfather so to speak, or modern low level APIs? Because if so, I'm out of this debate. People need to be honest with themselves if we are going to continue this..

Mantle was designed as a prototype to show that lower level APIs were wanted and would work well and they proved that. From the beginning they said that they wanted Mantle or an API very similar to it to take hold. They never wanted to be exclusive low level API. They were also going to open it up but Nvidia refused to use it. That made it DOA. We know why Nvidia refused to use it, even their latest Maxwell cards never got async compute support which is one of the major new features in DX12. Now if Nvidia had been working with Microsoft on DX12 and async compute for years, why did Maxwell not have actual support for it? Even Pascal doesn't, just a better preemption. These are the core features of DX12 to make better game engines.

None of this is true. Mantle was never going to be an open API whatsoever. How long did it take for AMD to come out with the Mantle whitepapers? Also, if Mantle was going to be open from the beginning, why didn't they share the specification with Intel, NVidia and many others? Also, Maxwell does have asynchronous compute support, it just can't do it dynamically, unlike Pascal.. And, asynchronous compute isn't a DX12 specification, so stop being dishonest. :frowning:

Its also the core of Vulkan and also used for LiquidVR, so nothing was wasted. Khronos has thanked AMD over and over because it saved them a ton of time.

Yeah, they developed Mantle because they wanted to give it away! :laughing:
 

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
And this is a revelation for you?? Everyone knows AMD has been saying it for years, they created Mantle because the devs asked them to. Seriously... this guy.

It's not a revelation, but I don't think people understood the extent to which game developers like Andersson spearheaded the movement towards low level APIs on PCs. One need only look at this thread to see that..

Nobody brought up Andersson not even once, even though he was the brain behind Mantle..
 

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
...yes. We know that certain developers were pushing for it, particularly Dice. That doesn't mean that all developers were pushing for it, or everyone would have jumped on the Mantle, Vulkan, and DX12 trains all at once. This does not take away from the fact that AMD was the first to actually respond to said developers and put work into creating a low-level API. As another comment put it, AMD were the ones who woke up and smelled competitive advantage while other IHVs weren't bothering.

Do you even read the posts? I said in that paragraph of mine that you quoted that AMD deserved credit for seizing the low level API initiative on PC, so I have no idea why you even bothered to type this as I obviously agreed with you..

Are you dense? No, I don't think that. I'm saying that the norm on PCs was to code using high-level APIs; it was easy, it's what PC programmers were used to, and it's all they had to work with. Mantle was revolutionary because, as AMD_Robert notes in that Reddit AMA, there were no graphics APIs on PC that behaved like that:

If you can't be civil, then drop out....seriously. Asking me if I'm dense is infraction worthy :unamused:

But if you want me to quote your own words to what lead me to say what I said, I'll be happy to do so. Here is you implying that Mantle was necessary for developers to "grasp" the benefits of low level APIs, despite having used them for years in console land.. You also imply that Mantle was necessary to get the ball rolling towards low level APIs for PC, which isn't true at all, because the ball had been rolling in that direction for many years.

The theory of the benefit of such APIs has been known for some time, sure, but developers and publishers need more than theory, they need to see practical benefits. That's where Mantle came in - it was the proof of concept of sorts that pushed Microsoft and Khronos to follow suit.

Developers don't need Mantle to understand the benefits of low level APIs, because the benefits are well known and are applied consistently in console development..

You are wrong. Flat. Out. Wrong.

If I'm wrong, it's because you didn't phrase your comments properly..

No! No they wouldn't! You seem to think that all of DX12's features would have been locked in on Day 1 of development. Software development does. Not. Work. Like. That. DX12 could have been in development simultaneously with Mantle, and Microsoft could have been aware of the direction AMD was going with Mantle because of how closely AMD and Microsoft work on the Xbox One and Direct X. You yourself quoted the part of the Mantle FAQ that said AMD made the full spec of Mantle available to Microsoft from the early days! Seeing the work that AMD was doing with Mantle and the developer support for it could have then influenced Microsoft to add those same features to DirectX, possibly before Mantle was even publicly announced. This scenario does not involve Microsoft "slapping together" DX12 at any point, so no, that is NOT what we were "really saying". Why is this such a hard concept for you to wrap your brain around?

It's not a hard concept to wrap my brain around, it's just that I don't think you're paying attention to what you and the other AMD supporters are saying. What I find especially funny, is that you've now changed your stance from Mantle being the prompt that got Microsoft and Khronos to start developing low level APIs of their own, to DX12 and Mantle being developed simultaneously :confused2:

Like I said above, people need to be honest with themselves if this debate is going to continue, because I'm not going to waste any more time finding your own quotes that you typed, but then discard later when convenient.. :unamused:
 

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
The reason Mantle existed was because there was a type of DX12 on the Xbone.

Xbox One used a low level variant of DX11 when it launched. It didn't get DX12 until late November 2015.

Unfortunately, PC to console comparisons are a little difficult to make, because the Xbox One’s variant of DX11 was quite different to that of the PC. Microsoft had cut away at lot of the DX11 features which weren’t necessary for the Xbox (since the hardware configurations are fixed, there’s not a need for such heavy abstraction layers) and therefore there’s little doubt the “potential boost” of the Xbox One DX12 update is less than that of the PC. The Xbox One version of DirectX 11.x is known as the Monolithic Direct3d Runtime, which improved functionality such as the ability to leverage the Xbox One’s Asynchronous Compute Engines.

Source.

What AMD did was simply leverage the fact they did cooperate with MS to develop that low level API and bring the same kind of low level API that exist in consoles to PC hardware, something that apparently some developers wanted.

AMD, and a whole bunch of other IHVs.

As you say the main impetus for low level API were game developers.
If DX12 was assured to have those features in the PC version why did some game developers actually spent resources in a new low level API when DX12 was around the corner?
Surely, at least the big guys, would know what kind of feature MS intended to include on DX12 for PC.

Probably because it would have been easy to port. Also, there was a significant lapse between the release of Mantle, and the first DX12 games on PC which launched two years later.
So yeah, MS wouldn't have time to integrate those features in DX12 if they had to start from scratch after Mantle was announced. But MS didn't have to - the work was already done for the XBone DX12.

Xbox One DX12 launched about a year and a half after Mantle. First DX12 Xbox One game was Star Wars BF, which launched in November 2015.

Also, how long was Mantle in development?
The reason Mantle arrived without a whiff of being in development for years was because it wasn't in development for years, at least not as Mantle. Just as XBone DX12 API.

But yet the Xbox One DX12 API arrived a year and a half after Mantle did..

Mantle was developed alongside the XBone DX12 API. That was on of the AMD cards
That PS4 and XBone had their APUs was the other.

The evidence does not support this at all. If Xbox One DX12 and Mantle were developed simultaneously, why did the Xbox One DX12 API launch a year and a half later after Mantle?
 

Bacon1

Diamond Member
Feb 14, 2016
3,430
1,018
91
It's not a revelation, but I don't think people understood the extent to which game developers like Andersson spearheaded the movement towards low level APIs on PCs. One need only look at this thread to see that..

Nobody brought up Andersson not even once, even though he was the brain behind Mantle..

Are you kidding? He was brought up on the first page

D3D12 is based on AMDs command buffer submission and control model. As far as I know the story... AMD said many years ago, that the command buffer management in D3D11 is not useful for the many-core era, and they have a much more efficient concept that should work for the PC. Microsoft wants them to prove their claim, and they did it a year later or so. This prototype was the main building block of D3D12. The idea of Mantle came after this, because the lead programer of Dice didn't want to wait for D3D12, and he asked AMD to give him an explicit API for a new project (BF4). AMD said OK, and they also build an API for the same prototype. This was a good idea after all, because Vulkan is heavily based on the Mantle specification.

Technically D3D12 is not based on Mantle. But all of the new PC APIs based on an AMD prototype code.

You even REPLIED to that comment:

https://forums.anandtech.com/thread...le-have-on-vulkan-dx12.2486843/#post-38478422

And again here:

And then there's conversations like these between Johan Andersson (Dice) and Petr Tomicek (Creative Assembly):
https://twitter.com/repi/status/446718535616585730
They couldn't have made it more obvious.

Which was right above your other reply.

Yeah, they developed Mantle because they wanted to give it away! :laughing:

No idea why the stupid smilie, because thats exactly why they developed it. They wanted developers to be able to use it because developers wanted a better API. Why would they want to spend resources (money!) developing the API when other groups could do it instead?

None of this is true. Mantle was never going to be an open API whatsoever. How long did it take for AMD to come out with the Mantle whitepapers? Also, if Mantle was going to be open from the beginning, why didn't they share the specification with Intel, NVidia and many others?

AMD offered Mantle to Nvidia. They declined. That made it dead because game devs aren't going to spend resources duplicating efforts for two APIs, one for Nvidia, one for AMD. AMD got with Khronos group to use Mantle as the core for Vulkan. At that point there was no reason to release Mantle as open source because the better, multi platform version was open sourced as Vulkan.

[
Also, Maxwell does have asynchronous compute support, it just can't do it dynamically, unlike Pascal.. And, asynchronous compute isn't a DX12 specification, so stop being dishonest. :frowning:

Sorry but we have not seen a single example of Maxwell working with async compute. Even Timespy has it disabled by Nvidia's drivers.

It's a core part of DX12. There is no feature level, because it's a basic requirement for DX12 to begin with. What's not required is how its implemented (hardware vs software/driver). Nvidia tried to fake support with Maxwell and it was a disaster.

https://msdn.microsoft.com/en-us/li...spx#asynchronous_compute_and_graphics_example

You are being very dishonest
 

Bacon1

Diamond Member
Feb 14, 2016
3,430
1,018
91
And the first public demo of DX12 was done on NVidia hardware, shortly after the first Mantle driver became publically available. And according to NVidia, DX12 has been in the works since roughly 2010.

The first Mantle game update (BF4) and the first public DX12 demo occurred in the same month of the same year. That's very coincidental, if you believe logically that DX12 had a longer development time than Mantle.
The evidence does not support this at all. If Xbox One DX12 and Mantle were developed simultaneously, why did the Xbox One DX12 API launch a year and a half later after Mantle?

So which is it. Was DX12 in development from 2010, or after Mantle? You can't seem to make up your mind.
 

Piroko

Senior member
Jan 10, 2013
905
79
91
The evidence I've presented tells me that it was the game developers and not the IHVs that were mostly responsible for getting Microsoft to come up with DX12. In fact, Mantle was Johan Andersson's idea, and NOT AMD's as this German interview with Andersson implies. To be fair though, Andersson does give major props to AMD for helping him achieve his vision.
One, you should have read the whole interview and not just rely on the first paragraph.

Two, the literal translation from the interview is not "AMD helped to achieve his vision", but "AMD implemented his proposals":
Das alles sind große Schritte und ich muss AMD Respekt zollen, dass sie meine Vorschläge umgesetzt haben. Denn keiner der anderen Hersteller hat das getan.
Kinda funny how that changes the implications, isn't it?

Also, once more:
https://twitter.com/repi/status/446718535616585730
When (lead) developers from both Dice and Creative Assembly joke with each other at how similar those two are then how much more straight forward does it have to be?
 
  • Like
Reactions: DarthKyrie

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
Are you kidding? He was brought up on the first page

OK I'll admit I was wrong about this.

No idea why the stupid smilie, because thats exactly why they developed it. They wanted developers to be able to use it because developers wanted a better API. Why would they want to spend resources (money!) developing the API when other groups could do it instead?

So AMD spent millions of dollars of their own money to develop an API which was only going to be used by a small handful of developers for two years, until DX12 came and took over. Gee, that makes a lot of sense!

AMD offered Mantle to Nvidia. They declined.

What evidence do you have?

That made it dead because game devs aren't going to spend resources duplicating efforts for two APIs, one for Nvidia, one for AMD.

AMD uses DX11 just like NVidia so your one or the other argument makes no sense. What really killed Mantle, was the fact that developers would need to spend additional time and resources to create and maintain a separate rendering path that only one type of architecture could use. An architecture that comprised significantly less of the overall install base than NVidia's offerings.

Mantle was a waste of developer resources from a financial perspective, but it did draw a lot of attention to the positive benefits of low level APIs for PCs.

AMD got with Khronos group to use Mantle as the core for Vulkan. At that point there was no reason to release Mantle as open source because the better, multi platform version was open sourced as Vulkan.

So AMD always planned to give Khronos Mantle from the beginning? If that was the case, they could have saved a lot of money as Khronos is a consortium of IHVs and ISVs that would have helped to shoulder the financial burden of developing Mantle.

Sorry but we have not seen a single example of Maxwell working with async compute. Even Timespy has it disabled by Nvidia's drivers.

That's because it doesn't support dynamic asynchronous compute, as I've said. Asynchronous compute doesn't necessarily mean concurrent asynchronous compute.

It's a core part of DX12. There is no feature level, because it's a basic requirement for DX12 to begin with. What's not required is how its implemented (hardware vs software/driver). Nvidia tried to fake support with Maxwell and it was a disaster.

Asynchronous compute isn't a core feature of DX12, it's just a capability that modern GPUs possess which is fully exposed by lower level APIs. Mantle supported asynchronous compute, so does Vulkan, GNM etcetera.. In fact, I don't even think you need a low level API to use asynchronous compute. Asynchronous compute can probably be used with high abstraction layer APIs, but it probably wouldn't be as effective..


That doesn't really prove your point that asynchronous compute is a DX12 feature. The list of new features for DX12 according to Microsoft are:

Rasterizer Ordered Views
Typed UAV Load
Volume Tiled Resources
Conservative Rasterization
 

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
So which is it. Was DX12 in development from 2010, or after Mantle? You can't seem to make up your mind.

Not sure how those statements of mine contradict anything I've said. DX12 was in development for a very long time, from as early as 2010, there were meetings between IHVs, ISVs and Microsoft according to NVidia.

Mantle became available to the public in early 2014 via BF4, but DX12 on PCs wasn't available until early 2016. Gears of War Ultimate Edition was the first DX12 title available to consumers. This doesn't necessarily mean that Mantle started development first however, because DX12 likely took longer to Q&A because it supported more hardware types and had to do a lot more.
 

Glo.

Diamond Member
Apr 25, 2015
5,930
4,991
136
Rasterizer Ordered Views
Typed UAV Load
Volume Tiled Resources
Conservative Rasterization
And those features are base of DX11.3 feature set. DX11.3 lacks only low-level features, and explicit multi adapter feature. Which also has root in Mantle. In essence by this: DX11.3 = DX12 without Mantle.

DX11.3 is what DX12 was supposed to be without low-level features. If AMD would not come up with Mantle and gave it out to everybody, this is what you would see as DX12. But they did, and this is what we see around in the world of APIs.

It cannot be simpler. Everybody in the developer world know that DX12, Vulkan, Metal and Mantle are very similar in low-level features. For very good reason.
 

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
Kinda funny how that changes the implications, isn't it?

How? The implication is that Andersson was the brain behind Mantle, and that he was responsible for pressing IHVs to come up with a low level API for PC. AMD was the only one that listened and took his proposal seriously, and for that they deserve credit. Not sure how DX12 fits into all of this, because DX12 was definitely in development before Mantle released. So AMD would have known that Mantle would be short lived because the release of DX12 was imminent.

Also, once more:
https://twitter.com/repi/status/446718535616585730
When (lead) developers from both Dice and Creative Assembly joke with each other at how similar those two are then how much more straight forward does it have to be?

So DX12, Mantle, Vulkan, all of which target modern GPUs, share similarities? Who'd have thought. Again, the discussion isn't about whether Mantle influenced or affected DX12. It likely did, because both Andersson and AMD were collaborators with Microsoft for DX12.

What the disagreement is, is about whether DX12 in it's current form would exist if it had not been for Mantle. My answer to that is yes, it would exist because that's what the game developers wanted. Mantle was first off the block, but DX12 was going to come eventually no matter what.

The other disagreement is about whether DX12 is an evolution or offshoot of Mantle. For me the answer is no, based on comments AMD themselves have made, plus timeline concerns.
 

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
And those features are base of DX11.3 feature set. DX11.3 lacks only low-level features, and explicit multi adapter feature. Which also has root in Mantle. In essence by this: DX11.3 = DX12 without Mantle.

DX11.3 is a subset of the feature level 12_1 so these features aren't based on DX11.3 per say.. All an API does is expose capabilities in hardware. You can run a DX12 card on Windows 7, but you obviously won't be able to use those advanced features because the API doesn't expose them. Doesn't mean the advanced features aren't there though.

Microsoft did this so that gamers could access certain advanced features of GPUs on older OSs without having to upgrade to Windows 10.

DX11.3 is what DX12 was supposed to be without low-level features. If AMD would not come up with Mantle and gave it out to everybody, this is what you would see as DX12. But they did, and this is what we see around in the world of APIs.

*facepalms*

It cannot be simpler. Everybody in the developer world know that DX12, Vulkan, Metal and Mantle are very similar in low-level features. For very good reason.

Yes, if only the world was so simple..
 

Glo.

Diamond Member
Apr 25, 2015
5,930
4,991
136
DX11.3 is a subset of the feature level 12_1 so these features aren't based on DX11.3 per say.. All an API does is expose capabilities in hardware. You can run a DX12 card on Windows 7, but you obviously won't be able to use those advanced features because the API doesn't expose them. Doesn't mean the advanced features aren't there though.

Microsoft did this so that gamers could access certain advanced features of GPUs on older OSs without having to upgrade to Windows 10.



*facepalms*



Yes, if only the world was so simple..
For you it appears that it isn't. Its your choice to argue with all you have been given by various sources. Have fun with that.