"I think this solution will blow your socks off in terms of CPU utilization." -Guennadi Riguer, AMD
Why Mantle? Why another API? That was the question answered by AMD's Guennadi Riguer during the company's developer summit this week. He said that the existing APIs will only get developers "so far", and that's not what game makers want. They want performance problems solved once and for all, and they want control over the graphics hardware. That's where Mantle comes in.
"What we're trying to do really re-energize the industry because really over the last couple of years, we've been kinda stagnant as an industry," he said. "We would like to kick it up a notch and really give the tools to make exciting PC games."
He said AMD is not trying to please everyone with Mantle: they're not targeting every developer in the industry. However the API is designed to improve GPU efficiency by bringing developers a little closer to the hardware. Mantle is a "low level" API, lower than many other solutions offered to developers, but it's not so low that developers are toying with metal bits.
100,000 Draws Per Frame
"We have a bunch of interesting features that allow you to unlock performance never before possible," he said. "Some of those are generic, others are targeted more at GCN architecture. So there's a wide range of different things to enable very good performance. And while GPU performance is very important, I think this solution will blow your socks off in terms of CPU utilization."
He went on to say that developers typically can usually squeeze out 3 to 5 thousand draws per frame; only a few games manage 10,000 draws per frame at 50 to 60 Hz. With Mantle, AMD is taking an aggressive stance by targeting 100,000 draws per frame at "reasonable" frame rates. With more optimizations, he believes that developers could achieve even higher numbers.
What does that mean for PC gamers? A more responsive app, new effects and realism, a fuller environment and more. Lower systems, especially those with GCN-based GPUs, will be empowered with new visuals thanks to optimized performance. Other Mantle benefits include more predictable performance and behavior, sharing PC optimizations with the GCN-based Xbox One and PlayStation 4, and the opportunity to apply "novel" techniques.
"The key today to great performance is multi-threading," he said. "All of us have many core systems: four, six, eight core systems. And the problem is very few of those cores are available for driving graphics today. This is just plain wrong. The memory management on PC kinda gets in the way, because if you think about it, on the consoles with a much smaller memory footprint, you are actually able to achieve much greater visuals than you could on PCs with bigger memory configurations. We can fix that."
Later on he talked more about Mantle empowering low spec systems. That's important to developers and customers because suddenly the user base has expanded. He said it also means that they're much aligned with the current trend to low-power devices, tablet-like devices or any other slim devices. Those are the devices that are in the most need for an efficient way of driving the GPUs and CPUs. He said Mantle is uniquely positioned to deliver the best proposition on those types of low-power systems.
In a separate Mantle session Oxide Games discussed the studio's experience using Mantle, indicating that the API enables high batch counts, meaning any command sent to the GPU, not just draws. The team expects to push 300,000 batches by 2015, and 1 million batches at 60 frames per second by 2018. At this point everything starts to change: CPUs and GPUs will start calling code back and forth on each other. The hard line between the two will go away and all sorts of interesting things will begin to happen. Mantle seems to pave the road for this scenario to take place.
"Mantle is not expensive to support," said Tim Kip. "It's fairly cheap. And I think the big key for us is that it's a fixed cost. We're basically going to port our driver interface layer once and then it's just going to work and there's not a whole lot of extra maintenance we have to do to support it. And the really big thing we're excited about is to push the industry forward, to try out new techniques and new APIs."
Thanks to Mantle, apps with lower framerates still feel faster because the latency is better. The team is also able to add features they weren't sure would be possible for performance reasons such as film quality motion blur and other film-style techniques. The studio also provided a demo showing several battleships in space loaded with turrets, and hundreds of fighter ships shooting lasers at fleets of enemy ships. The rendering was in real time: you could zoom out and view the whole battle while keeping an incredibly fluid framerate.
Ultimately one thing was made clear during the presentations: Mantle is not simply just for AMD APUs and GPUs. The technology is reportedly open, so whether Nvidia accepts the tech or not is a different story altogether, but it's there for the GeForce company to embrace.