The big news from the Game Developers Conference this week was Microsoft’s reveal of its work on a new ray tracing API for DirectX called DirectX Raytracing. As the name would imply, this is a new initiative to bring the image quality improvements of ray tracing to consumer hardware with the push of Microsoft’s DX team. Scott already has a great write up on that news and current and future implications of what it will mean for PC gamers, so I highly encourage you all to read that over before diving more into this NVIDIA-specific news.
- For those you that might need a history lesson on ray tracing and its growth, check out this three-part series that ran on PC Perspective as far back as 2006!
- Ray Tracing and Gaming – Quake 4: Ray Traced Project
- Rendering Games with Raytracing Will Revolutionize Graphics
- Ray Tracing and Gaming – One Year Later
Ray tracing has been the holy grail of real-time rendering. It is the gap between movies and games – though ray tracing continues to improve in performance it takes the power of offline server farms to render the images for your favorite flicks. Modern game engines continue to use rasterization, an efficient method for rendering graphics but one that depends on tricks and illusions to recreate the intended image. Ray tracing inherently solves the problems that rasterization works around including shadows, transparency, refraction, and reflection. But it does so at a prohibitive performance cost. But that will be changing with Microsoft’s enablement of ray tracing through a common API and technology like what NVIDIA has built to accelerate it.
Alongside support and verbal commitment to DXR, NVIDIA is announcing RTX Technology. This is a combination of hardware and software advances to improve the performance of ray tracing algorithms on its hardware and it works hand in hand with DXR. NVIDIA believes this is the culmination of 10 years of development on ray tracing, much of which we have talked about on this side from the world of professional graphics systems. Think Iray, OptiX, and more.
RTX will run on Volta GPUs only today, which does limit usefulness to gamers. With the only graphics card on the market even close to considered a gaming product the $3000 TITAN V, RTX is more of a forward-looking technology announcement for the company. We can obviously assume then that RTX technology will be integrated on any future consumer gaming graphics cards, be that a revision of Volta of something completely different. (NVIDIA refused to acknowledge plans for any pending Volta consumer GPUs during our meeting.)
The idea I get from NVIDIA is that today’s RTX is meant as a developer enablement platform, getting them used to the idea of adding ray tracing effects into their games and engines and to realize that NVIDIA provides the best hardware to get that done.
I’ll be honest with you – NVIDIA was light on the details of what RTX exactly IS and how it accelerates ray tracing. One very interesting example I was given was seen first with the AI-powered ray tracing optimizations for Optix from last year’s GDC. There, NVIDIA demonstrated that using the Volta Tensor cores it could run an AI-powered de-noiser on the ray traced image, effectively improving the quality of the resulting image and emulating much higher ray counts than are actually processed.
By using the Tensor cores with RTX for DXR implementation on the TITAN V, NVIDIA will be able to offer image quality and performance for ray tracing well ahead of even the TITAN Xp or GTX 1080 Ti as those GPUs do not have Tensor cores on-board. Does this mean that all (or flagship) consumer graphics cards from NVIDIA will includ Tensor cores to enable RTX performance? Obviously, NVIDIA wouldn’t confirm that but to me it makes sense that we will see that in future generations. The scale of Tensor core integration might change based on price points, but if NVIDIA and Microsoft truly believe in the future of ray tracing to augment and significantly replace rasterization methods, then it will be necessary.
Though that is one example of hardware specific features being used for RTX on NVIDIA hardware, it’s not the only one that is on Volta. But NVIDIA wouldn’t share more.
The relationship between Microsoft DirectX Raytracing and NVIDIA RTX is a bit confusing, but it’s easier to think of RTX as the underlying brand for the ability to ray trace on NVIDIA GPUs. The DXR API is still the interface between the game developer and the hardware, but RTX is what gives NVIDIA the advantage over AMD and its Radeon graphics cards, at least according to NVIDIA.
DXR will still run on other GPUS from NVIDIA that aren’t utilizing the Volta architecture. Microsoft says that any board that can support DX12 Compute will be able to run the new API. But NVIDIA did point out that in its mind, even with a high-end SKU like the GTX 1080 Ti, the ray tracing performance will limit the ability to integrate ray tracing features and enhancements in real-time game engines in the immediate timeframe. It’s not to say it is impossible, or that some engine devs might spend the time to build something unique, but it is interesting to hear NVIDIA infer that only future products will benefit from ray tracing in games.
It’s also likely that we are months if not a year or more from seeing good integration of DXR in games at retail. And it is also possible that NVIDIA is downplaying the importance of DXR performance today if it happens to be slower than the Vega 64 in the upcoming Futuremark benchmark release.
Alongside the RTX announcement comes GameWorks Ray Tracing, a colleciton of turnkey modules based on DXR. GameWorks has its own reputation, and we aren't going to get into that here, but NVIDIA wants to think of this addition to it as a way to "turbo charge enablement" of ray tracing effects in games.
NVIDIA believes that developers are incredibly excited for the implementation of ray tracing into game engines, and that the demos being shown at GDC this week will blow us away. I am looking forward to seeing them and for getting the reactions of major game devs on the release of Microsoft’s new DXR API. The performance impact of ray tracing will still be a hindrance to larger scale implementations, but with DXR driving the direction with a unified standard, I still expect to see some games with revolutionary image quality by the end of the year.
“but RTX is what gives NVIDIA
“but RTX is what gives NVIDIA the advantage over AMD and its Radeon graphics cards, at least according to NVIDIA.”
Really and look at the extra shader cores on VEGA that benifit Ray Tracing calculations and look at the Vega 56 having the Same number of shader cores(3584) as the GP102 Based GTX 1080Ti. I’ll wait and see about that.
Numbers of “cores” doesn’t
Numbers of “cores” doesn’t means anything as does theoretical peak performance which, by definition, is just theoretical, especially with raytracing where GPUs struggles to use all their capbilities
Shader cores are where all
Shader cores are where all the ALU, Int, FP, units are located Nvidia’s Pascal Based Tapeouts pretty much have to use their limited shader resources for regular gaming workloads on the GP104 based GTX 1080/1070 SKUs which lack the numbers of extra shader cores availble to dedicate towards any extra Ray Tracing compute requirements. AMD’s Vega 10 die tapeout based Vega 56 and 64 have the excess shader cores to spare that Nvidia’s GP104 based designs do not have. So the Vega 56 has more shader cores than the GTX 1080/1070 and matches exactly the GTX 1080Ti’s shader core counts. Vega 64 has even more shaders cores available than the GTX 1080Ti with Vega 64 having 4096 shader cores.
It has nothing to do directly with any “theoretical peak performance” the higher shader core counts on Vega leave more shaders not being needed for regular gaming workloads available to be put towards compute via more shaders to work the Ray Tracing Interaction Calculations that are compute heavy in nature so the more excess shader cores the better.
Nvidia made the choice to strip its gaming oriented GPUs of all but the necessary for gaming graphics needs and Nvidia marketed the power savings to gamers to much success for DX11 gaming workloads mostly. But now that the DX12 and this DXR API/Code paths from MS needs and can make use of all that extra compute Vega can be seen in a better light(Pun Intended) with all that excess shader compute available.
There is a Shader/Compute reason that Vega was popular with the miners and that same larger numbers of shader cores for compute reasons will make Vega useful for that Ray Tracing compute also. Just go look at that ROCm and work that AMD has done as well as the Radeon ProRender and that can be made use of for Ray Tracing on Vega’s excess numbers of shaders a resource where Nvidia Pascal is lacking.
Where Ray Tracing compute is concerned that is accelerated on the GPUs available excess shader cores Vega will prove as popular for that as for any blockchain/hashing workloads that are also compute related.
P.S. Also because of this new
P.S. Also because of this new API/code paths for Ray Tracing being utilized for shadows the traditional ROP/Raster oriented piplines are going to be less stressed doing raster based shadow mapping workloads. So Vega’s lower ROP counts(64 ROPs) with not be as much of a disadvantage against the GTX 1080Ti’s 88 ROPs. Ray Tracing is a compute oriented workload that actually removes a lot of the Raster Operation Pipeline(ROP) stresses for shadow mapping via the ROPs/Raster and puts the Ray Traced shadow workloads in the compute oriented pipline instead.
I find your uselessly wordy
I find your uselessly wordy comments funny at times, especially the once like this where you try to sustain that number of cores are a good way to compare two different chip with a quite different architecture.
It’s also funny that you think that NVIDIA stripped “all but the necessary for gaming graphics” as the only thing that reduced to minimum is FP64 units, that’s why GP102 is not only competitive with GP100 but even faster in many normal precision workload.
You make the big mistake to consider every workload as equivalent, that’s not true for CPU’s and even way less for GPUs.
Radeon ProRender is just the AMD’s own solution for offline raytracing (made to rival NVIDIA’s Iray and Mental Ray) but it’s not yet on par with the competitors and they have a long road ahead to reach them. Anyway, here we are talking about real time rendering which is concretely different from offline rendering.
Well it takes words to convey
Well it takes words to convey information and when comparing GPUs, even of different makers, the Shader core IP is relatively the same. And that the GP100, GP102 are not meant/designed for gaming usage as they are the base die tape-outs that Nvidia uses for its Tesla and Quadro professional brands for the most part with GP104, GP106, and GP108 being the base die tape-outs specifically tuned for gaming usage.
GP102 is faster at higher clocks than GP100 in some SKUs but it is a well known fact that those GP100 based Tesla Branded SKUs are clocked lower to get the best TFlops/Watt metrics while being packed rather densely into those 1/2U server units and cooled by the same fans out the back as the rest of the unit’s hardware.
Those Int and FP/Other math units on GPUs’ shader cores have to conform to IEEE/other standards and really they are only slightly different depending on the number of pipeline stages, the higher the clock rates the deeper the pipeline stages required.
But you are digressing in comparing the GP100 to GP102 tape-outs as I’m only intending to compare mostly Shader counts for the gaming/non gaming graphics and gaming compute usage mostly and Nvidia did make use of that GP102(Not really intended for gaming) variant to work up its GTX 1080Ti and Vega 56 has the same number of shaders as the GTX 1080Ti and the same numbers of ROPs as the GP104 based GTX 1080. Vega 56 is so close to the Vega 64 in TMU counts, and Matches the Vega 64 in ROP counts that Vega 56 can actually be thought of as AMD’s Gaming focused Vega Variant where Vega 64 has overkill amounts of shader cores and Vega 64 is derived from the full Vega 10 base die tape-out that also is used for Radeon Pro WX 9100 and Radeon Instinct MI25 SKUs.
Those Extra Vega shader cores sure worked out poorly for overall power uage against Nvidia’s Heavily marketed power usage metrics but great for mining compute with Vega undervolted to get the best MHashes/Watt metrics that had AMD/Retailers dancing all the way to the bank. And now the DX12/DXR, and Vulkan, other shoe drops on that compute needed for gaming compute and Ray Tracing Acceleration on those extra shader cores and Vega’s Shader cores are there in some extra numbers for that usage also.
You are steadily trying to avoid the fact that both the Vega 56 and Vega 64, Vega 10 base die tape-out derived SKUs, have such an excess of shaders and that they do not make use of all their complement of shaders for the most part when gaming. And that those extra shader cores being not tied up for gaming are rather available for any sorts of DD12/DXR sorts of extra compute usage that any game/gaming engine can now make use of under the DX12/DXR APIs offering, as well as whatever Vulkan will get to match that usage. Not so on the majority of Nvidia’s gaming oriented Pascal SKUs that are stripped of all but the minimal needed shaders for DX11 tuned gaming workloads.
And Radeon ProRender is available via AMD’s ROCm(Radeon Open CoMpute) libraries and open sourced under AMD’s GPUOpen program(1)
“In this blog post we are announcing the open-source availability of the Radeon™ ProRender renderer, an implementation of the Radeon ProRender API. We will give a brief summary of its features and provide some technical insights into the internals of the renderer.” (1)
But OMG we must cut back on the wording, wording that is intended to be pedantic because there is so little actual Discussion and Comparison and Contrasting of the respective GPU maker’s ROP counts and TMU counts and Shader Counts, as well as shader to ROP ratios and shader to TMU ratios, that are damn relevant to explaining Vega’s extra power usage relative to Nvidia’s offerings or Vega’s compute performance Relative to Nvidia’s offerings etc. And that is for DX12/DXR and Vulkan(Will get feature parity with DX12) that are the latest Graphics/Compute APIs that are more advanced than DX11(Legacy Code Status).
No one is trying to do deep dives into the workings of Nvidia’s or AMD’s respective Raster Operations Pipelines(ROPs) or even attempting to measure the efficiency of those respective companies TMU/ROP black boxes and that sort of direct comparison and contrasting is probably frowned upon in those mysterious review manuals that the makers push out under permanent NDA.
But Hay, let’s just stick to what marketing wants to be known and target the LCDs(Unwashed) and Knowlege be damned. And somtimes loads of words are required when discussing technical details with plenty of parenthetical notes and qualifying prepositional phrases and repeating of shader, TMU, and counts, and Shader counts ad nauseam. Even Nvidia’s white papers do various statistical breakdowns of various GPU(ROP, TMU, other units) to shader ratios and they make use of loads of words and are very pedantic to a great degree, the white-papers that Nvidia’s marketing monkeys have not gotten their filthy grubby little hand on in an attempt to keep Cletus in the dark and make more sales larger/hgher branding Numbers or Rebranded GPU micro-archs that get brand new names, ditto for AMD’s marketing Monkeys.
Wow, I even get headaches proofreading My Walls-O-Text posts!
(1)
“Open-source Radeon ProRender”
https://gpuopen.com/open-source-radeon-prorender/
Edit: repeating of shader,
Edit: repeating of shader, TMU, and counts, and Shader counts ad nauseam
To: repeating of shader, TMU, and ROP counts, ad nauseam
Man, Why Those words so many words Cletus don’t grok dem many words you is spewing!
Now AMD has its Radeon
Now AMD has its Radeon Rays(Formally FireRays) Ray Tracing tools that are part of that GPUOpen OpenCL based and open to all sorts of Ray Tracing middleware/API/whatever competing IP(With No Lock-In).
“AMD is taking the wraps off of Radeon Rays, an open-source “intersection acceleration library.” The technology is said to work on all OpenCL 1.2-compatible platform and doesn’t require AMD hardware. The company is also showing off a new version of ProRender software with real-time ray-tracing capability.
.
.
.
Radeon Rays is the new name for AMD FireRays, a ray-tracing SDK the company rolled into its GPUOpen initiative back at the beginning of 2016. The software doesn’t need AMD silicon to run, though the company points out that its GCN graphics processors’ asynchronous compute engines “allow Radeon Rays to output the data for display into the ray-tracing viewport while the application is simultaneously driving the graphics engine.”
Radeon Rays will run on Windows, macOS, and Linux. The SDK also comes with an open-source stand-alone renderer that AMD says shows off how easy it could be for developers to implement an advanced rendering engine around the tool.” (1)
You Can call is Rays and you can Rays J… but you doesn’t hasta call me Johnson!
(1)
“AMD casts a light on its Radeon Rays real-time ray tracing tools”
https://techreport.com/news/33399/amd-casts-a-light-on-its-radeon-rays-real-time-ray-tracing-tools
Edit: You Can call is Rays
Edit: You Can call is Rays and you can Rays J… but you doesn’t hasta call me Johnson!
To: You Can call ts Rays and you can it Rays J… but you doesn’t hasta call me Johnson!
Beer Buzz and a big Burrito made me fudge that up, and more fudge later when all that comes out the backside! Beer Buzz is great to get one through the regularly scheduled noreaster!
That’s fantastic, a long
That’s fantastic, a long awaited milestone!
Accurate soft shadows, AO and reflections (without any traces of aliasing or jitter) would be awesome, but I’m a bit disappointed by the lack of Global Illumination in the list.
@Ryan, could you please check with the Nvidia representatives if they have any plans to also support Global Illumination, aka “Indirect Lighting” (and with how many ray bounces) in a future version of the tech?
There was a second real-time
There was a second real-time ray tracing engine released the very same day: https://venturebeat.com/2018/03/19/otoys-octane-4-blends-cinematic-video-and-games-using-ai/
OTOY also collaborated with ImgTec working on RT hardware, just before Apple dropped them.
Combined with Nvidia’s
Combined with Nvidia’s roadmap for VR rendering (https://www.roadtovr.com/exclusive-how-nvidia-research-is-reinventing-the-display-pipeline-for-the-future-of-vr-part-1/ & https://www.roadtovr.com/exclusive-nvidia-research-reinventing-display-pipeline-future-vr-part-2/) leaning heavily on path-tracing capabilities, it looks like a switch from throughput-optimised architectures to latency-optimised architectures could come sooner than expected.
Nice review of 3D graphics
Nice review of 3D graphics concepts from Blighty with loads of good refrences. They are so good in Blighty where educationally oriented materials are concerned. This is a great primer on the subject and is well worth a save.
orb.essex.ac.uk/ce/ce318/www/documents/references/3dGraphics.pdf
“Mipmap
In 3D computer
“Mipmap
In 3D computer graphics texture filtering, MIP maps (also mipmaps) are pre-calculated, optimized collections of
images that accompany a main texture, intended to increase rendering speed and reduce aliasing artifacts. They are
widely used in 3D computer games, flight simulators and other 3D imaging systems. The technique is known as
mipmapping. The letters “MIP” in the name are an acronym of the Latin phrase multum in parvo, meaning “much in
a small space”. Mipmaps need more space in memory. They also form the basis of wavelet compression.”
Notice how in Blighty they take the time to even define the origin of that MIP acronym part of the name. You will never see that as much on this side of the pond.
Wow that text did not display
Wow that text did not display properly and it was directly cut and pasted from a PDF document. What’s the deal with that, the text looked fine when it was first pasted over but after posting just look at that mess.
WTF is wrong with Drupal CMS, and/or Microsoft’s Textbox Base class, or any derived from that Base class, Textbox class. Is it in the PHP or way down in some DLL/other API level.
AMD advertised ray tracing
AMD advertised ray tracing for years. But they went realistic about it and placed it where it mattered: professional rendering.
It is called FireRays and is today part of the Rays 2.0 set in OpenGPU.
NOW Nvidia jumped on it too wit RTX when Microsoft announced support for it in DX.
Nvidia is closed source and Nvidia only, DX is closed and Microsoft only.
With a cross platform market and console/mobile gaming being the majority and the benefit of open solutions, the logical strategy would be to choose Vulkan and the OpenGPU suite.
AMD advertised ray tracing
AMD advertised ray tracing for years. But they went realistic about it and placed it where it mattered: professional rendering.
It is called FireRays and is today part of the Rays 2.0 set in OpenGPU.
NOW Nvidia jumped on it too wit RTX when Microsoft announced support for it in DX.
Nvidia is closed source and Nvidia only, DX is closed and Microsoft only.
With a cross platform market and console/mobile gaming being the majority and the benefit of open solutions, the logical strategy would be to choose Vulkan and the OpenGPU suite.