Subject: Mobile | April 14, 2016 - 04:59 PM | Scott Michaud
Tagged: vulkan, google, android n, Android
We knew it was coming. Google was a partner of Vulkan since it launched, but support was coming at some point after the desktop launch. We expected that it would be soon, but now we know that the new graphics API is in Android N Developer Preview 2. Other platforms, like apparently the Samsung Galaxy S7, are able to ship Vulkan drivers, but it is “a part of the platform” in this Android N pre-release.
Vulkan is particularly useful for mobile because those devices tend to have many cores, but relatively slow cores, which drive a decently fast GPU. Whether the benefits end up being higher performance or just better battery life (as the CPU can downclock more and more often) depends on the application, but it can be useful for 3D applications, and eventually even 2D ones, like future Qt applications with many elements, or even web browsers (when drawing complex sites).
It's good that Google is supporting Vulkan, especially after their ban of OpenCL drivers from Nexus devices. We want a single GPU compute interface across as many platforms as possible. While Vulkan isn't as complete as OpenCL, lacking some features such as unified memory, it should be more useful than OpenGL ES compute shaders.
Subject: Graphics Cards | April 10, 2016 - 09:04 PM | Scott Michaud
Tagged: nvidia, vulkan, graphics drivers
This is not a main-line, WHQL driver. This is not even a mainstream beta driver. The beta GeForce 364.91 drivers (364.16 on Linux) are only available on the NVIDIA developer website, which, yes, is publicly accessible, but should probably not be installed unless you are intending to write software and every day counts. Also, some who have installed it claim that certain Vulkan demos stop working. I'm not sure whether that means the demo is out-of-date due to a rare conformance ambiguity, the driver has bugs, or the reports themselves are simply unreliable.
That said, if you are a software developer, and you don't mind rolling back if things go awry, you can check out the new version at NVIDIA's website. It updates Vulkan to 1.0.8, which is just documentation bugs and conformance tweaks. These things happen over time. In fact, the initial Vulkan release was actually Vulkan 1.0.3, if I remember correctly.
The driver also addresses issues with Vulkan and NVIDIA Optimus technologies, which is interesting. Optimus controls which GPU acts as primary in a laptop, switching between the discrete NVIDIA one and the Intel integrated one, depending on load and power. Vulkan and DirectX 12, however, expose all GPUs to the system. I'm curious how NVIDIA knows whether to sleep one or the other, and what that would look like to software that enumerates all compatible devices. Would it omit listing one of the GPUs? Or would it allow the software to wake the system out of Optimus should it want more performance?
Anywho, the driver is available now, but you probably should wait for official releases. The interesting thing is this seems to mean that NVIDIA will continue to release non-public Vulkan drivers. Hmm.
Subject: Graphics Cards | March 24, 2016 - 02:04 PM | Jeremy Hellstrom
Tagged: Ubuntu 16.04, linux, vulkan, amd, nvidia
Last week AMD released a new GPU-PRO Beta driver stack and this Monday, NVIDIA released the 364.12 beta driver, both of which support Vulkan and meant that Phoronix had a lot of work to do. Up for testing were the GTX 950, 960, 970, 980, and 980 Ti as well as the R9 Fury, 290 and 285. Logically, they used the Talos Principal test, their results compare not only the cards but also the performance delta between OpenGL and Vulkan and finished up with several OpenGL benchmarks to see if there were any performance improvements from the new drivers. The results look good for Vulkan as it beats OpenGL across the board as you can see in the review.
"Thanks to AMD having released their new GPU-PRO "hybrid" Linux driver a few days ago, there is now Vulkan API support for Radeon GPU owners on Linux. This new AMD Linux driver holds much potential and the closed-source bits are now limited to user-space, among other benefits covered in dozens of Phoronix articles over recent months. With having this new driver in hand plus NVIDIA promoting their Vulkan support to the 364 Linux driver series, it's a great time for some benchmarking. Here are OpenGL and Vulkan atop Ubuntu 16.04 Linux for both AMD Radeon and NVIDIA GeForce graphics cards."
Here are some more Graphics Card articles from around the web:
- XFX R9 390 Double Dissipation Black Edition @ [H]ard|OCP
- Far Cry Primal Graphics Card Performance Analysis @ eTeknix
- Inno3D GTX 980Ti iChill Black @ eTeknix
Subject: Graphics Cards | March 15, 2016 - 02:02 AM | Ryan Shrout
Tagged: vulkan, raja koduri, Polaris, HBM2, hbm, dx12, crossfire, amd
After hosting the AMD Capsaicin event at GDC tonight, the SVP and Chief Architect of the Radeon Technologies Group Raja Koduri sat down with me to talk about the event and offered up some additional details on the Radeon Pro Duo, upcoming Polaris GPUs and more. The video below has the full interview but there are several highlights that stand out as noteworthy.
- Raja claimed that one of the reasons to launch the dual-Fiji card as the Radeon Pro Duo for developers rather than pure Radeon, aimed at gamers, was to “get past CrossFire.” He believes we are at an inflection point with APIs. Where previously you would abstract two GPUs to appear as a single to the game engine, with DX12 and Vulkan the problem is more complex than that as we have seen in testing with early titles like Ashes of the Singularity.
But with the dual-Fiji product mostly developed and prepared, AMD was able to find a market between the enthusiast and the creator to target, and thus the Radeon Pro branding was born.
Raja further expands on it, telling me that in order to make multi-GPU useful and productive for the next generation of APIs, getting multi-GPU hardware solutions in the hands of developers is crucial. He admitted that CrossFire in the past has had performance scaling concerns and compatibility issues, and that getting multi-GPU correct from the ground floor here is crucial.
- With changes in Moore’s Law and the realities of process technology and processor construction, multi-GPU is going to be more important for the entire product stack, not just the extreme enthusiast crowd. Why? Because realities are dictating that GPU vendors build smaller, more power efficient GPUs, and to scale performance overall, multi-GPU solutions need to be efficient and plentiful. The “economics of the smaller die” are much better for AMD (and we assume NVIDIA) and by 2017-2019, this is the reality and will be how graphics performance will scale.
Getting the software ecosystem going now is going to be crucial to ease into that standard.
- The naming scheme of Polaris (10, 11…) has no equation, it’s just “a sequence of numbers” and we should only expect it to increase going forward. The next Polaris chip will be bigger than 11, that’s the secret he gave us.
There have been concerns that AMD was only going to go for the mainstream gaming market with Polaris but Raja promised me and our readers that we “would be really really pleased.” We expect to see Polaris-based GPUs across the entire performance stack.
- AMD’s primary goal here is to get many millions of gamers VR-ready, though getting the enthusiasts “that last millisecond” is still a goal and it will happen from Radeon.
- No solid date on Polaris parts at all – I tried! (Other than the launches start in June.) Though Raja did promise that after tonight, he will only have his next alcoholic beverage until the launch of Polaris. Serious commitment!
- Curious about the HBM2 inclusion in Vega on the roadmap and what that means for Polaris? Though he didn’t say it outright, it appears that Polaris will be using HBM1, leaving me to wonder about the memory capacity limitations inherent in that. Has AMD found a way to get past the 4GB barrier? We are trying to figure that out for sure.
Why is Polaris going to use HBM1? Raja pointed towards the extreme cost and expense of building the HBM ecosystem prepping the pipeline for the new memory technology as the culprit and AMD obviously wants to recoup some of that cost with another generation of GPU usage.
Speaking with Raja is always interesting and the confidence and knowledge he showcases is still what gives me assurance that the Radeon Technologies Group is headed in the correct direction. This is going to be a very interesting year for graphics, PC gaming and for GPU technologies, as showcased throughout the Capsaicin event, and I think everyone should be looking forward do it.
Subject: Graphics Cards | March 9, 2016 - 07:42 PM | Scott Michaud
Tagged: amd, radeon, graphics drivers, vulkan, dx12, DirectX 12
New graphics drivers from AMD have just been published, and it's a fairly big release. First, Catalyst 16.3 adds Vulkan support to main-branch drivers, which they claim is conformant to the 1.0 specification. The Khronos Group website still doesn't list AMD as conforming, but I assume that they will be added shortly (rather than some semantic “conformant” “fully conformant” thing going on). This is great for the platform, as we are still in the launch window of DirectX 12.
Performance has apparently increased as well, significantly. This is especially true in the DirectX 12 title, Gears of War Ultimate Edition. AMD claims that FuryX will see up to a 60% increase in that title, and the R9 380 will gain up to 44%. It's unclear how much that is in real world performance, especially in terms of stutter and jank, which apparently plagues that game.
The driver also has a few other interesting features. One that I don't quite understand is “Power Efficiency Toggle”. This supposedly “allows the user to disable some power efficiency optimizations”. I would assume that means keeping you GPU up-clocked under certain conditions, but I don't believe that was much of an issue for the last few generations. That said, the resolved issues section claims that some games were choppy because of core clock fluctuation, and lists this option as the solution, so maybe it was. It is only available on “select” Radeon 300 GPUs and Fury X. That is, Fury X specifically, not the regular Fury or the Nano. I expect Ryan will be playing around with it in the next little while.
Last of the main features, the driver adds support for XConnect, which is AMD's new external graphics standard. It requires a BIOS that support external GPUs, which AMD lists the Razer Blade Stealth as. Also noteworthy, Eyefinity can now be enabled with just two displays, and Display Scaling can be set per-game. I avoid manually controlling drivers, even my Wacom tablet, to target specific applications, but that's probably great for those who do.
As a final note: the Ashes of the Singularity 2.0 benchmark now supports DirectFlip.
If you have a recent AMD GPU, grab the drivers from AMD's website.
Subject: Graphics Cards | March 7, 2016 - 06:15 PM | Scott Michaud
Tagged: vulkan, nvidia, graphics drivers, game ready
This new driver for NVIDIA brings Vulkan support to their current, supported branch. This is particularly interesting for me, because the Vulkan branch used to pre-date fixes for Adobe Creative Cloud, which meant that things like “Export As...” in Photoshop CC didn't work and After Effects CC would crash. They are also WHQL-certified, and they roll in all of the “Game Ready” fixes and optimizations that were released since ~October, which would be mostly new for Vulkan's branch.
... This is going to be annoying to temporarily disable...
Speaking of which, GeForce Game Ready 364.47 drivers is classified as “Game Ready” itself. The four titles optimized with this release are: Tom Clancy's The Division, Need For Speed, Hitman, and Ashes of the Singularity. If you are interested in playing those games, then this driver is what NVIDIA recommends that you use.
Note that an installation bug has been reported, however. When installing with multiple monitors, NVIDIA suggests that you disable all but one during the setup process, but you can safely re-enable them after. For me, with four monitors and a fairly meticulous desktop icon layout, this was highly annoying, but something I've had to deal with over time (especially the last two, beta Vulkan drivers). It's probably a good idea to close all applications and screenshot your icons before running the installer.
Podcast #388 - Samsung SSD T3, Logitech G933 and G633, Vulkan on Android, HTC Vive Pricing and more!
Subject: General Tech | February 25, 2016 - 02:14 PM | Ken Addison
Tagged: YOGA 710, YOGA 510, vulkan, VR, vive, video, T3, T1, Samsung, qualcomm, podcast, Oculus, MWC 2016, logitech, LG G5, Lenovo, htc, galaxy s7, G933, G633
PC Perspective Podcast #388 - 02/25/2016
Join us this week as we discuss the Samsung SSD T3, Logitech G933 and G633, Vulkan on Android, HTC Vive Pricing and more!
The URL for the podcast is: http://pcper.com/podcast - Share with your friends!
- iTunes - Subscribe to the podcast directly through the Store (audio only)
- RSS - Subscribe through your regular RSS reader (audio only)
- MP3 - Direct download link to the MP3 file
Hosts: Allyn Malventano, Josh Walrath, and Sebastian Peak
Program length: 1:42:11
Week in Review:
0:41:35 This episode of PC Perspective Podcast is brought to you by Braintree. Even the best mobile app won’t work without the right payments API. That’s where the Braintree v.0 SDK comes in. One amazingly simple integration gives you every way to pay. Try out the sandbox and see for yourself at braintreepayments.com/pcper
News items of interest:
Hardware/Software Picks of the Week
Subject: Mobile, Shows and Expos | February 21, 2016 - 05:14 PM | Scott Michaud
Tagged: Samsung, epic games, unreal engine 4, vulkan, galaxy s7, MWC, mwc 16
Mobile World Congress starts with a big bang... ... ... :3
Okay, not really; it starts with the formation of a star, which happens on a continual basis across the universe. I won't let facts get in the way of a pun, though.
As for the demo, it is powered by Unreal Engine 4 and runs on a Samsung Galaxy S7 with the Vulkan API. The setting seems to be some sort of futuristic laboratory that combines objects until it builds up into a star. It is bright and vibrant, with many particles, full-scene anti-aliasing, reflections, and other visual effects. The exact resolution when running on the phone was never stated, but the YouTube video was running at 1080p30, and the on-stage demo looked fairly high resolution, too.
Epic Games lists the features they added to mobile builds of Unreal Engine 4 for this demo:
- Dynamic planar reflections
- “Full” GPU particle support, which includes vector fields.
- Temporal Anti-Alising, which blends neighboring frames to smooth jaggies in motion.
- ASTC texture compression (created by ARM and AMD for OpenGL and OpenGL ES)
- Full scene dynamic cascaded shadows
- Chromatic aberration
- Dynamic light refraction
- Filmic tonemapping curve, which scales frames rendered in HDR to a presentable light range
- Improved static reflections
- High-quality depth of field
- Vulkan API for thousands of onscreen, independent objects.
The company has not stated which version of Unreal Engine 4 will receive these updates. I doubt that it will land in 4.11, which is planned for March, but they tend to release a full dot-version every one to three months. They also have early previews for those who wish to try it early, some compiled leading up to launch, and others that need to be built from GitHub.
Subject: Mobile | February 21, 2016 - 12:18 PM | Ryan Shrout
Tagged: MWC, MWC 2016, qualcomm, vulkan, snapdragon, snapdragon 820, adreno 530
As we prepare for the onslaught of new mobile devices and technologies being announced at Mobile World Congress in Barcelona, the low-level Vulkan API begins its campaign to take hold in the PC and mobile spaces, superceding the OpenGL standard that exists today in hopes of providing a more efficient use of compute resources across the industry.
Qualcomm announced official support for the Vulkan API on its Adreno 530 GPU and the Snapdragon 820 processor. Vulkan API support will be coming for upcoming other unannounced Adreno 5xx series GPUs and currently shipping Adreno 4xx GPUs, allowing us to wonder if Vulkan support will find its way into currently shipping handsets.
As Qualcomm points out in its press release on the news, the Vulkan API will bring some important and groundbreaking changes to the mobile space.
- Explicit control over GPU operation, with minimized driver overhead for improved performance;
- Multi-threading-friendly architecture to increase overall system performance;
- Optimal API design that can be used in a wide variety of devices including mobile, desktop, consoles, and embedded platforms;
- Use of Khronos’ new SPIR-V intermediate representation for shading language flexibility and more predictable implementation behavior;
- Extensible layered architecture that enables innovative tools without impacting production performance while validating, debugging, and profiling;
- Simple drivers for low-overhead efficiency and cross vendor portability.
Vulkan API support is being added to Qualcomm's development tools suite this week as well.
“We are pleased to have contributed to the definition of Khronos’ new Vulkan API. Qualcomm Technologies will be among the first to ship conformant Vulkan drivers, starting with Snapdragon 820’s embedded Adreno 530 GPU, and subsequently with our Adreno 4xx series GPUs. Vulkan enables the next generation of graphics performance by adding multi-threaded command buffer generation and explicit control of advanced graphics capabilities within Adreno GPUs,” said Micah Knapp, director of product management, Qualcomm Technologies, Inc. “In the coming days, we anticipate supporting Vulkan in the Snapdragon developer tools including Snapdragon Profiler and the Adreno SDK, to help application developers take advantage of this outstanding new API when creating graphics and compute applications for smartphones, tablets, VR HMDs and a variety of other types of devices that use Snapdragon processors.”
A quick look at the Khronos page listing companies with Vulkan conformant drivers shows Qualcomm on the short list, meaning it has provided the standards body with a driver that has passed its first level of certification. With its emphasis on efficiency, the Vulkan API and Qualcomm's early integration could be the most important place that the API ends up. In a technology field where battery life and performance must balance unlike anywhere else, getting this new implementation of graphics and compute could push mobile devices forward quickly.
Subject: Graphics Cards | February 19, 2016 - 07:11 PM | Scott Michaud
Tagged: vulkan, linux
Update: Venn continued to benchmark and came across a few extra discoveries. For example, he disabled VDPAU and jumped to 89.6 FPS in OpenGL and 80.6 FPS in Vulkan. Basically, be sure to read the whole thread. It might be updated further even. Original post below (unless otherwise stated).
On Windows, the Vulkan patch of The Talos Principle leads to a net loss in performance, relative to DirectX 11. This is to be expected when a developer like Croteam optimizes their game for existing APIs, and tries to port all that work to a new, very different standard, with a single developer and three months of work. They explicitly state, multiple times, not to expect good performance.
Image Credit: Venn Stone of LinuxGameCast
On Linux, Venn Stone of LinuxGameCast found different results. With everything maxed out at 1080p, his OpenGL benchmark reports 38.2 FPS, while his Vulkan raises this to an average of 66.5 FPS. Granted, this was with an eight-core AMD FX-8150, which launched with the Bulldozer architecture back in 2011. It did not have the fastest single-threaded performance, falling behind even AMD's own Phenom II parts before it in that regard.
Still, this is a scenario that allowed the game to scale to Bulldozer's multiple cores and circumvent a lot of the driver overhead in OpenGL. It resulted in a 75% increase in performance, at least for people who pair a GeForce 980
Ti ((Update: The Ti was a typo. Venn uses a standard GeForce GTX 980.)) with an eight-core, Bulldozer CPU from 2011.