Thursday, March 23rd 2017

Futuremark Releases 3DMark v2.3.3663 - Adds Vulkan Support
Futuremark has just released a major update to its 3DMark benchmarking suite, adding Vulkan support while simultaneously axing its cousin, Mantle. This means that the API Overhead test now uses a Vulkan path instead of its previous Mantle one, which is sure to lead several enthusiasts into a frenzy of benchmarking under the Khronos's API (which has just recently been announced will offer support for multi-GPU in Windows 10, 8.x, 7, and Linux operating systems.)
Check some of the new features, improvements and fixes on the new version right after the break. You can download this piece of software right here on TPU - just follow the link below.Download: Futuremark 3DMark + TimeSpy v2.3.3663
New
Added Vulkan support to the API Overhead feature test. Use the API Overhead feature test to compare Vulkan, DirectX 12, and DirectX 11 API performance on your PC. The Vulkan test requires compatible video drivers with Vulkan support. Check with your GPU vendor for Vulkan driver support if your hardware is unable to run the test. Note that the Vulkan test replaces the Mantle test found in previous versions of 3DMark.
Improved
SystemInfo scan time greatly improved on X99 systems.
Fixed
Check some of the new features, improvements and fixes on the new version right after the break. You can download this piece of software right here on TPU - just follow the link below.Download: Futuremark 3DMark + TimeSpy v2.3.3663
New
Added Vulkan support to the API Overhead feature test. Use the API Overhead feature test to compare Vulkan, DirectX 12, and DirectX 11 API performance on your PC. The Vulkan test requires compatible video drivers with Vulkan support. Check with your GPU vendor for Vulkan driver support if your hardware is unable to run the test. Note that the Vulkan test replaces the Mantle test found in previous versions of 3DMark.
Improved
SystemInfo scan time greatly improved on X99 systems.
Fixed
- Fixed an issue that could cause the API Overhead feature test to fail to show a score at the end of an otherwise normal run on some systems.
- Fixed Time Spy test to properly recover from a corrupted shader cache - if runtime compiled shaders are found to be corrupted, they are deleted and recompiled. Uninstallation also now completely removes the shader cache folder.
- Fixed a scaling issue that could cause parts of the UI to end up outside the display area on 1080p monitors with 150% DPI scaling. UI will now scale appropriately even on high DPI scaling settings.
74 Comments on Futuremark Releases 3DMark v2.3.3663 - Adds Vulkan Support
To prove your claims of Nvidia optimizations wrong:source
Just because Futuremark requests input doesn't mean Futuremark implements the suggestions.
If all the benchmarks should be optimized for AMD hardware, then we are no longer benchmarking the same thing any more.
1) Vulkan™ supports close-to-metal control enabling faster performance and better image quality across Windows® 7, Windows® 8.1, Windows® 10, and Linux®. No other graphics API offers the same powerful combination of OS compatibility, rendering features, and hardware efficiency.
2) Developed by the Khronos Group, the same consortium that developed OpenGL®, Vulkan™ is a descendant of AMD’s Mantle, inheriting a powerful low-overhead architecture that gives software developers complete access to the performance, efficiency, and capabilities of Radeon™ GPUs and multi-core CPUs.
Compared to OpenGL, Vulkan™ substantially reduces “API overhead” – the background work a CPU does to interpret what a game asks of the hardware – to deliver meaningful features, performance, and image quality and expose GPU hardware features that wouldn’t ordinarily be accessible through OpenGL.
www.amd.com/en-us/innovations/software-technologies/technologies-gaming/vulkan
And on Wiki
en.wikipedia.org/wiki/Vulkan_(API)
These type of benchmarks (Synthetic I believe) are very important in keeping a "Standard" in place for measuring performance. It's not set in stone, because you will probably get different results in real world gaming, but at least it gives you an idea from one GPU to another GPU. Perhaps somebody else can explain it better. Based on DOOM PC, for me anyway, I've gained a huge performance advantage when enabling Vulkan. I also noticed a bit better texture quality. Though I enabled it half way through the game because I didn't even know it was offered lol.
Vulkan is based on SPIR-V, which was developed for OpenCL, which has absolutely nothing to do with Mantle. Vulkan applied a similar API syntax from Mantle. But since the underlying API is completely different, AMD had to write their driver from scratch just like everyone else. AMD were in fact the last of the three vendors to release a driver.
All of these assumptions of yours about performance of AMD vs. Nvidia is nonsense, there is nothing inherently favoring AMD in the design of Vulkan.
And one thing is for certain, this is an API overhead benchmark, memory has nothing to do with it.(facepalm) The purpose of the benchmark is to measure the overhead of the respective APIs, optimization for each GPU is not even relevant. That's not how the graphics APIs work. The whole point is that the drivers for the various GPU architectures implement a common interface, so games don't have to be written over from scratch for every new architecture.
Vulkan is the API which is foundationally Mantle.
www.khronos.org/assets/uploads/developers/library/2015-gdc/Khronos-Vulkan-GDC_Mar15.pdf Page 4
SPIR-V is the shader language which is designed to run on Vulkan and OpenCL 2.1
If you even bothered to read the link I sent you: Claiming Vulkan is based on Mantle because some functions have similar syntax is just as ridiculous as claiming Chrome is based on Firefox for implementing similar features.
Vulkan is based on SPIR-V, which is the latest iteration of SPIR, which was designed for OpenCL, which has nothing to do with Mantle. The syntax of a few functions in an API doesn't matter how it will behave, but the underlying architecture compiling the code which will run on the GPUs does.
Yes, Vulkan is available on more platforms, but that's the only advantage we know. Everything else is still up for grabs.
With regards to Mantle & Vulkan.
Vulkan evolved from Mantle. We know that Mantle's code was donated towards developing Vulkan. We also know Mantle pushed Micro$oft to develop DX12.
Had AMD not created Mantle, DX12 and Vulkan today would be different. Such as missing the low level API features.
AMD's Mantle was highly Innovative. Accessing the GPU like never before. Genius. AMD deserves credit for the creation of Vulkan and DX12.
Quote:
AMD's Robert Hallock confirmedon a blog post that Mantle had, for the most part, been turned into the Khronos Group’s Vulkan API that would supersede OpenGL.
www.pcworld.com/article/2894036/mantle-is-a-vulkan-amds-dead-graphics-api-rises-from-the-ashes-as-opengls-successor.html
Pretty likely that Microsoft was working on Direct3D 12 in 2013 because Microsoft didn't want anything to do with Mantle.
Vulkan started as AZDO, then "glNext", then Mantle arrived and was used as input to finalize the API frontend. There is no denying Mantle was useful input, providing cleaner syntax, but the groundwork started way before Mantle. Just look at the AZDO features in the OpenGL registry which happened for years before, as those of us familiar with this technology already know ;)
Anyhow, here you go, and please we are not here to argue and get frustrated. This is a discussion and a friendly debate.
DirectX 12 was announced by Microsoft at GDC on March 20, 2014, and was officially launched alongside Windows 10 on July 29, 2015.
* The release of Direct3D 12 comes alongside other initiatives for low-overhead graphics APIs including AMD's Mantle for AMD graphics cards,
en.wikipedia.org/wiki/DirectX#DirectX_12
QUOTE:
* While AMD's Raja Koduri was on-hand to say that DirectX 12 and Direct3D 12 was like "getting four generations of hardware ahead," the technology may have never seen the light of day without AMD's goading. After securing deals to create the PlayStation 4 and Xbox One's hardware, the company unveiled Mantle—a new set of console-like application programming interfaces designed to give game developers more direct access to PC hardware, and thus, boost graphics performance.
* Mere weeks later, here we are, and at first blush DirectX 12 appears awfully similar to Mantle. (That's what happens when you poke the bear!)
www.pcworld.com/article/2109596/directx-12-vs-mantle-comparing-pc-gamings-software-supercharged-future.html
* Microsoft hints that DirectX 12 will imitate Mantle, but AMD insists its API has a bright future
QUOTE:
We’ve spoken to several sources with additional information on the topic who have told us that Microsoft’s interest in developing a new API is a recent phenomenon, and that the new DirectX (likely DirectX 12) will substantially duplicate the capabilities of AMD’s Mantle. The two APIs won’t be identical — Microsoft is doing its own implementation — but the end result, for consumers, should be the same: lower CPU overhead and better scaling in modern titles.
www.extremetech.com/gaming/177407-microsoft-hints-that-directx-12-will-imitate-and-destroy-amds-mantle
Microsoft DirectX 12 is DirectX 11 with Mantle Integrated
* The delightfully controversial SemiAccurate.com has just revealed that DirectX12 is nothing more than DirectX11 with Mantle API shamelessly integrated.
wccftech.com/microsoft-directx-12-mantle-integrated-performance-boost-xbox-questionable/
Microsoft adopts Mantle but calls it DX12
* Just as SemiAccurate predicted months ago, Microsoft has adopted AMD’s Mantle but are now calling it DX12.
semiaccurate.com/2014/03/18/microsoft-adopts-mantle-calls-dx12/
Even AMD was promoting Direct X12, of course they were, because they know full well, they cannot compete with Microsoft in this manner, so AMD was once again forced to "INNOVATE" and STEER this PC Gaming industry in the right direction. That is with MANTLE.
www.amd.com/en-us/innovations/software-technologies/directx12
AMD Says the Future of Mantle is DX12
www.fudzilla.com/news/graphics/37160-amd-says-the-future-of-mantle-is-directx-12
New Reports Claim Microsoft's DirectX Rips Off Mantle, Won't Help Xbox One -- But Is It True?
Read more at hothardware.com/news/new-reports-claim-microsofts-directx-rips-off-mantle-wont-help-xbox-one--but-is-it-true-#LrT9QDGbQ8HrB9oc.99
hothardware.com/news/new-reports-claim-microsofts-directx-rips-off-mantle-wont-help-xbox-one--but-is-it-true-
APIs take a long time to develop and they announced D3D12 in 2014 and announced they had no intention to support Mantle in 2013. I think efikkan's guess of 2010 is plausible but only Microsoft knows when D3D12 became more than idea. That said, Mantle went from theory to practice pretty fast.
The language makes little difference, the development and testing tools is where it's at. Traditionally, DX held the upper hand, because Khronos handles neither of those, while Microsoft provided integration with Visual Studio. At the same time, DX also offered other goodies when it came to gaming like handling of input and sound (remember the time when people where confused about having to install the latest DX for Doom3, despite Doom3 being an OpenGL title?).
But as always, with great powers comes great responsibilities; finer control of memory allocations etc. requires more effort from the developers, so sloppy coding can result in "disasters". Personally, I would want more control over the pipeline, and more features in the shaders, enabling me to build a different rendering pipeline more optimized for whatever I need. I'm not referring to the language, but the fact that OpenGL and Vulkan is not object oriented, which makes much more sense since all these APIs are state machines. With OpenGL and Vulkan you are free to encapsulate it if you want, but you don't have to.
In fact, most workloads that can be reduced to functional transforms prove to be easier to run in parallel or pipelined as a series of functional transforms or even better, a combo of the two, a pipeline of functional transforms where individual steps can be further run in parallel. This is how you squeeze every drop of multi-core performance out of any workload. It's also is easier to test and figure out what the hell was going on when you try to debug it.