VR Performance Evaluation
Even though virtual reality hasn’t taken off with the momentum that many in the industry had expected on the heels of the HTC Vive and Oculus Rift launches last year, it remains one of the fastest growing aspects of PC hardware. More importantly for many, VR is also one of the key inflection points for performance moving forward; it requires more hardware, scalability, and innovation than any other sub-category including 4K gaming. As such, NVIDIA, AMD, and even Intel continue to push the performance benefits of their own hardware and technology.
Measuring and validating those claims has proven to be a difficult task. Tools that we used in the era of standard PC gaming just don’t apply. Fraps is a well-known and well-understood tool for measuring frame rates and frame times utilized by countless reviewers and enthusiasts. But Fraps lacked the ability to tell the complete story of gaming performance and experience. NVIDIA introduced FCAT and we introduced Frame Rating back in 2013 to expand the capabilities that reviewers and consumers had access to. Using more sophisticated technique that includes direct capture of the graphics card output in uncompressed form, a software-based overlay applied to each frame being rendered, and post-process analyzation of that data, we were able to communicate the smoothness of a gaming experience, better articulating it to help gamers make purchasing decisions.
VR pipeline when everything is working well.
For VR though, those same tools just don’t cut it. Fraps is a non-starter as it measures frame rendering from the GPU point of view and completely misses the interaction between the graphics system and the VR runtime environment (OpenVR for Steam/Vive and OVR for Oculus). Because the rendering pipeline is drastically changed in the current VR integrations, what Fraps measures is completely different than the experience the user actually gets in the headset. Previous FCAT and Frame Rating methods were still viable but the tools and capture technology needed to be updated. The hardware capture products we used since 2013 were limited in their maximum bandwidth and the overlay software did not have the ability to “latch in” to VR-based games. Not only that but measuring frame drops, time warps, space warps and reprojections would be a significant hurdle without further development.
VR pipeline with a frame miss.
NVIDIA decided to undertake the task of rebuilding FCAT to work with VR. And while obviously the company is hoping that it will prove its claims of performance benefits for VR gaming, it should not be overlooked the investment in time and money spent on a project that is to be open sourced and free available to the media and the public.
NVIDIA FCAT VR is comprised of two different applications. The FCAT VR Capture tool runs on the PC being evaluated and has a similar appearance to other performance and timing capture utilities. It uses data from Oculus Event Tracing as a part of the Windows ETW and SteamVR’s performance API, along with NVIDIA driver stats when used on NVIDIA hardware to generate performance data. It will and does work perfectly well on any GPU vendor’s hardware though with the access to the VR vendor specific timing results.
Subject: General Tech | February 26, 2017 - 12:13 AM | Scott Michaud
Tagged: valve, pc gaming
When VR started to take off, developers begun to realize that audio is worth some attention. Historically, it’s been difficult to market, but that’s par for the course when it comes to VR technology, so I guess that’s no excuse to pass it up anymore. Now Valve, the owners of the leading VR platform on the PC have just released an API for audio processing: Steam Audio SDK.
Image Credit: Valve Software
First, I should mention that the SDK is not quite open. The GitHub page (and the source code ZIP in its releases tab) just contain the license (which is an EULA) and the readme. That said, Valve is under no obligation to provide these sorts of technology to the open (even though it would be nice) and they are maintaining builds for Windows, Mac, Linux, and Android. It is currently available as a C API and a plug-in for Unity. Unreal Engine 4, FMOD, and WWISE plug-ins are “coming soon”.
As for the technology itself, it has quite a few interesting features. As you might expect, it supports HRTF out of the box, which modifies a sound call to appear like it’s coming from a defined direction. The algorithm is based on experimental data, rather than some actual, physical process.
More interesting is their sound propagation and occlusion calculations. They are claiming that this can be raycast, and static scenes can bake some of the work ahead-of-time, which will reduce runtime overhead. Unlike VRWorks Audio or TrueAudio Next, it looks like they’re doing it on the CPU, though. I’m guessing this means that it will mostly raycast to fade between versions of the audio, rather than summing up contributions from thousands of individual rays at runtime (or an equivalent algorithm, like voxel leakage).
Still, this is available now as a C API and a Unity Plug-in, because Valve really likes Unity lately.
Subject: General Tech | January 27, 2017 - 10:11 PM | Scott Michaud
Tagged: valve, pc gaming, steam
A little late on this one, but it’s been on my backlog for quite a while and I think it’s worthy of “public service announcement” status. Last week, Valve published a new Steam Client feature that allows users to relocate specific games to other folders. Just right-click on any installed games, click “Properties”, click the “Local Files” tab, then click “Move Install Folder...”.
So yeah, if you want to switch games to and from an SSD, the Steam Client can do it for you. You could always do it by shutting down Steam Client, moving the folder between two folders that Steam tracks, and restarting the client. I have experienced some situations where the Steam Client then looks at the files, determines that they’re invalid, and redownloads them. While I that just happened to align with a new patch or something, it’s a moot point now that Steam Client just does it for you.
So yeah, if you didn’t already find out about this: enjoy.
Subject: General Tech | December 22, 2016 - 12:58 PM | Jeremy Hellstrom
Tagged: vive, valve, Lighthouse, alan yates
Curious about the tech behind Valve's Lighthouse room-scale VR positioning system for the HTC Vive? Learn about it from Alan Yates, one of the leads on the project at Valve over at Hack a Day in a 40 minute video. He discusses the various attempts at finding a way to make the positioning system work, from failed bearings to the eventual discovery of the optimal thickness for the mirror. If you can't wait for the second generation of Lighthouse, he also provides you with a way to get your hands on an ASIC on a breakout board which will help you build your own version.
"[Alan Yates] is a hacker’s engineer. His job at Valve has been to help them figure out the hardware that makes virtual reality (VR) a real reality. And he invented a device that’s clever enough that it really should work, but difficult enough that it wasn’t straightforward how to make it work."
Here is some more Tech News from around the web:
- Canada's CRTC Declares Broadband Internet Access a Basic Service @ Slashdot
- Encrypted Messaging App Signal Uses Google To Bypass Censorship @ Slashdot
- 5 Essential Linux Holiday Amusements @ Linux.com
- Apple's AirPods get a rare zero score from iFixit @ The Inquirer
- Don't pay up to decrypt – cure found for CryptXXX ransomware, again @ The Register
- Name's BOND, JBOND: Igneous's ARM strap-on is for your drives only @ The Register
Maybe Good that Valve Called their API OpenVR?
Update, December 6th, 2016 @ 2:46pm EST: Khronos has updated the images on their website, and those changes are now implemented on our post. The flow-chart image changed dramatically, but the members image has also added LunarG.
Original Post Below
The Khronos Group has just announced their VR initiative, which is in the early, call for participation stage. The goal is to produce an API that can be targeted by drivers from each vendor, so that applications can write once and target all compatible devices. The current list of participants are: Epic Games, Google, Oculus VR, Razer, Valve, AMD, ARM, Intel, NVIDIA, VeriSilicon, Sensics, and Tobii. The point of this announcement is to get even more companies involved, before it matures.
Image Credit: The Khronos Group
Valve, in particular, has donated their OpenVR API to Khronos Group. I assume that this will provide the starting point for the initiative, similar to how AMD donated Mantle to found Vulkan, which overcomes the decision paralysis of a blank canvas. Also, especially for VR, I doubt these decisions would significantly affect individual implementations. If it does, though, now would be the time for them to propose edits.
In terms of time-frame, it’s early enough that the project scope hasn’t even been defined, so schedules can vary. They do claim that, based on past experiences, about 18 months is “often typical”.
That’s about it for the announcement; on to my analysis.
Image Credit: The Khronos Group, modified
First, it’s good that The Khronos Group are the ones taking this on. Not only do they have the weight to influence the industry, especially with most of these companies having already collaborated on other projects, like OpenGL, OpenCL, and Vulkan, but their standards tend to embrace extensions. This allows Oculus, Valve, and others to add special functionality that can be picked up by applications, but still be compatible at a base level with the rest of the ecosystem. To be clear, the announcement said nothing about extensions, but it would definitely make sense for VR, which can vary with interface methods, eye-tracking, player tracking, and so forth.
If extensions end up being a thing, this controlled competition allows the standard as a whole to evolve. If an extension ends up being popular, that guides development of multi-vendor extensions, which eventually may be absorbed into the core specification. On the other hand, The Khronos Group might decide that, for VR specifically, the core functionality is small and stable enough that extensions would be unnecessary. Who knows at this point.
Second, The Khronos Group stated that Razer joined for this initiative specifically. A few days ago, we posted news and assumed that they wanted to have input into an existing initiative, like Vulkan. While they still might, their main intentions are to contribute to this VR platform.
Third, there are a few interesting omissions from the list of companies.
Microsoft, who recently announced a VR ecosystem for Windows 10 (along with the possibly-applicable HoloLens of course), and is a member of the Khronos Group, isn’t part of the initiative, at least not yet. This makes sense from a historical standpoint, as Microsoft tends to assert control over APIs from the ground up. They are, or I should say were, fairly reluctant to collaborate, unless absolutely necessary. This has changed recently, starting with their participation with the W3C, because good God I hope web browsers conform to a standard, but also their recent membership with the Khronos Group, hiring ex-Mozilla employees, and so forth. Microsoft has been lauding how they embrace openness lately, but not in this way yet.
Speaking of Mozilla, that non-profit organization has been partnered with Google on WebVR for a few years now. While Google is a member of this announcement, it seems to be mostly based around their Daydream initiative. The lack of WebVR involvement with whatever API comes out of this initiative is a bit disappointing, but, again, it’s early days. I hope to see Mozilla and the web browser side of Google jump in and participate, especially if video game engines continue to experiment with cross-compiling to Web standards.
It's also surprising to not see Qualcomm's name on this list. The dominant mobile SoC vendor is a part of many Khronos-based groups including Vulkan, OpenCL, and others, so it's odd to have this omission here. It is early, so there isn't any reason to have concern over a split, but Qualcomm's strides into VR with development kits, platform advancements and other initiatives have picked up in recent months and I imagine it will have input on what this standard becomes.
And that’s all that I can think of at the moment. If you have any interests or concerns, be sure to drop a line in the comments. Registration is not required.
Subject: General Tech | November 25, 2016 - 04:17 AM | Scott Michaud
Tagged: valve, steam, pc gaming, black friday
Okay, I admit it: I’m a little late on this one. Sorry, all! Sometimes you need to shelf a post because it’s taking forever to write, but you only realize it after days of researching and editing have gone by. In the mean time, simple posts, like this one, begin to collect dust in the queue. You just need to know when to let go, even if it’s temporarily. This time I didn’t.
Oh well. So Valve decided to host their Autumn Sale from now until 1pm (EST) on Tuesday. To me, a sale that starts just before American Thanksgiving and ends hours after Cyber Monday... seems like a Black Friday sale. They even acknowledge it as such in their announcement, so I guess I’m not alone.
There really isn’t much to say, though. Gabe Newell will get your money via big discounts on new and bundled back catalog games... oh wait, there is. Remember how Steam was pushing “Discovery” with their new store aesthetic? How it was supposed to help users find relevant content within their store? They just decided to create “The Steam Awards”, which are user-nominated through the store listing.
This is quite interesting. From Steam’s perspective, it allows a handful of games to get promoted to a wider audience, which could allow some games break out of their niche. On the other hand, since it is user-selected, it would need a niche to have a chance at that exposure. Whether it helps good games find an audience that would otherwise die off? Not sure. I am interested to see, if this really is a phase in the Discovery initiative, what else will be introduced. Time will tell...
Podcast #425 - Samsung 960 EVO, NZXT S340, NVIDIA revenue, wireless Vive, Serious Sam VR, Steam VR on Linux and more!
Subject: General Tech | November 17, 2016 - 03:53 PM | Allyn Malventano
Tagged: wireless, VR, video, valve, TPCAST, tempered glass, steam, serious sam, Samsung, S340, podcast, nzxt, linux, htc, 960 EVO, 375.86
PC Perspective Podcast #425 - 11/17/16
Join us this week as we discuss new Samsung 960 EVO, NZXT S340, NVIDIA revenue, wireless Vive, Serious Sam VR, Steam VR on Linux and more!
The URL for the podcast is: http://pcper.com/podcast - Share with your friends!
- iTunes - Subscribe to the podcast directly through the iTunes Store (audio only)
- Google Play - Subscribe to our audio podcast directly through Google Play!
- RSS - Subscribe through your regular RSS reader (audio only)
- MP3 - Direct download link to the MP3 file
Hosts: Allyn Malventano, Josh Walrath, Jeremy Hellstrom, and Sebastian Peak
Program length: 1:13:46
Week in Review:
News items of interest:
Hardware/Software Picks of the Week
Subject: General Tech | November 7, 2016 - 09:07 PM | Scott Michaud
Tagged: valve, steam, pc gaming
As we mentioned last week, Valve was working on a major refresh of the Steam homepage, with a heavy emphasis on letting users find products that interest them. This update is now live, and will be presented to you the
new next time you load (or reload) the store page. They also have a banner link, right near the top, that highlights changes, including a few they've already made over the course of 2016.
One glaring thing that I note is the “Recently Viewed” block. There doesn't seem to be a way to disable this or otherwise limit the amount of history that it stores. While this is only visible to your account, which should be fairly obvious, it could be a concern for someone who shares a PC or streams regularly. It's not a big issue, but it's one that you would expect to have been considered.
Otherwise, I'd have to say that the update looks better. The dark gray and blue color scheme seems a bit more consistent than it was, and I definitely prefer the new carousel design.
What do you all think?
Subject: Graphics Cards | November 5, 2016 - 08:19 PM | Scott Michaud
Tagged: linux, DOTA 2, valve, nvidia, vulkan, opengl
Phoronix published interesting benchmark results for OpenGL vs Vulkan on Linux, across a wide spread of thirteen NVIDIA GPUs. Before we begin, the CPU they chose was an 80W Intel Xeon E3-1280 v5, which fits somewhere between the Skylake-based Core i7-6700k and Core i7-6700 (no suffix). You may think that Xeon v5 would be based on Broadwell, but, for some reason, Intel chose the E3-1200 series to be based on Skylake. Regardless, the choice of CPU will come in to play.
They will apparently follow up this article with AMD results.
A trend arose throughout the whole article. At 1080p, everything, from the GTX 760 to the GTX 1080, was rendering at ~101 FPS on OpenGL and ~115 FPS on Vulkan. The obvious explanation is that the game is 100% CPU-bound on both APIs, but Vulkan is able to relax the main CPU thread enough to squeeze out about 14% more frames.
The thing is, the Xeon E3-1280 v5 is about as high-end of a mainstream CPU as you can get. It runs the most modern architecture and it can achieve clocks up to 4 GHz on all cores. DOTA 2 can get harsh on the CPU when a lot of units are on screen, but this is a little surprisingly low. Then again, I don't have any experience running DOTA 2 benchmarks, so maybe it's a known thing, or maybe even a Linux-version thing?
Moving on, running the game at 4K, the results get more interesting. In GPU-bound scenarios, NVIDIA's driver shows a fairly high performance gain on OpenGL. Basically all GPUs up to the GTX 1060 run at a higher frame rate in OpenGL, only switching to Vulkan with the GTX 1070 and GTX 1080, where OpenGL hits that 101 FPS ceiling and Vulkan goes a little above.
Again, it will be interesting to see how AMD fairs against this line of products, both in Vulkan and OpenGL. Those will apparently come “soon”.
Subject: General Tech | November 4, 2016 - 05:33 PM | Scott Michaud
Tagged: epic games, valve, htc, vr funhouse, nvidia
In early September, we posted about a VR game jam that was coming to Hamburg, Germany by Epic Games, NVIDIA, HTC, and Valve. The companies wanted to increase the amount of content available so, with the release of the VR Funhouse mod kit, they rented a boat, docked it really well, and let indie developers do their thing around the clock. Seven teams of three-to-five participated, and the public were invited to play around with the results.
Most of the entries deviated from the literal fun-house theme to some extent. Probably the most original game is one where users play a kid in a candy store, trying to evade detection while gorging on sweet, sweet candy. Go figure, it's called Kid in a Candy Store. The closest to the literal interpretation of the theme is Beer Beer Beer and Sausages, where you serve carnival food, with real beer and mustard fluid simulations.
Two of the games, Beer Beer Beer and Sausages and Waiter Wars, are available for free on the VR Funhouse Steam Workshop page. I'm not sure what happened to the rest. The Unreal Engine post seems to suggest that they are supposed to be here, but maybe some of the teams are looking to polish it up a little first.