Vulkan Ray Tracing Tested on GeForce RTX 20/30, Radeon RX 6000 and even on GeForce GTX!


GeeXLab path tracing demo - Vulkan ray tracing



Downloads

 
Want to play with ray tracing? Here is a Vulkan ray tracing demo made with GeeXLab that implements a path tracer. The demo is available on Windows and Linux. A path tracer is an interesting benchmark because we can easily increase the workload of ray tracing accelerator units by launching more rays per pixel.

By default, the demo starts with 16 samples per pixel (or 16 SPP): for each pixel on the screen, 16 rays are launched with small random variation on the direction of the ray (at launch or after a bounce). The rule is simple: the more samples, the better the final image.

The demo renders the ray traced scene in a full HD image (1920×1080 pixels). There is no denoiser (it’s not the purpose of the demo). The purpose of the demo is to benchmark the performance of the ray tracing units of GeForce RTX and Radeon RX 6000 GPUs. You can choose the SPP: 16, 32, 64, or 128. 128 SPP is reserved for powerful GPUs. I also added a 256 SPP for fun but I didn’t included it in the benchmark. If your GPU is able to run the 256 SPP test, post your results in the comments section.

GeeXLab path tracing demo - Vulkan ray tracing benchmark

 
I tested the demo on Windows 10 64-bit with the following graphics cards:
– GeForce RTX 2070
– GeForce RTX 2080
– GeForce RTX 3060 Ti
– Radeon RX 6800 XT

For Radeon GPUs, Windows 10 64-bit v2009 (20H2) and latest Radeon Adrenalin 21.2.2 drivers are required. For GeForce GPUs, I tested with latest GeForce 461.40.

I also tested the demo on Linux Mint 20.1 64-bit with the following graphics cards:
– GeForce RTX 2080
– GeForce RTX 3060 Ti
– GeForce GTX 1060 6GB (yes it’s a GTX!)

Performances on Linux (with driver 460.32.03) are identical to Windows ones so I will only show performances on Windows in comparative tables.

The demo (32 SPP):
GeeXLab path tracing demo - Vulkan ray tracing

 

Test System
CPU Intel Core i7-8700K @ 3.7GHz
Motherboard GIGABYTE Z390 Gaming X
Memory 16GB DDR4 Corsair Vengeance LED @ 3000MHz
PSU Corsair AX860i
Storage Samsung 840 Pro 256GB SSD
OS Windows 10 v2009 64-bit

 

Test 1: 16 SPP

GeeXLab path tracing demo - Vulkan ray tracing

49 FPS
ASUS ROG Strix GeForce RTX 2080 – GeForce 461.40
45 FPS
GIGABYTE GeForce RTX 3060 Ti Gaming OC 8G – GeForce 461.40
36 FPS
MSI GeForce RTX 2070 Ventus – GeForce 460.89
26 FPS
ASUS TUF Radeon RX 6800 XT OC 16GB – Adrenalin 21.2.2
3 FPS
ASUS Strix GeForce GTX 1080 OC 8GB – GeForce 461.40
2 FPS
EVGA GeForce GTX 1060 6GB – GeForce 460.32.03 on Linux

 

Test 2: 32 SPP

GeeXLab path tracing demo - Vulkan ray tracing

27 FPS
ASUS ROG Strix GeForce RTX 2080 – GeForce 461.40
25 FPS
GIGABYTE GeForce RTX 3060 Ti Gaming OC 8G – GeForce 461.40
19 FPS
MSI GeForce RTX 2070 Ventus – GeForce 460.89
14 FPS
ASUS TUF Radeon RX 6800 XT OC 16GB – Adrenalin 21.2.2

 

Test 3: 64 SPP

GeeXLab path tracing demo - Vulkan ray tracing

14 FPS
ASUS ROG Strix GeForce RTX 2080 – GeForce 461.40
13 FPS
GIGABYTE GeForce RTX 3060 Ti Gaming OC 8G – GeForce 461.40
10 FPS
MSI GeForce RTX 2070 Ventus – GeForce 460.89
7 FPS
ASUS TUF Radeon RX 6800 XT OC 16GB – Adrenalin 21.2.2

 

Test 4: 128 SPP

GeeXLab path tracing demo - Vulkan ray tracing

7 FPS
ASUS ROG Strix GeForce RTX 2080 – GeForce 461.40
7 FPS
GIGABYTE GeForce RTX 3060 Ti Gaming OC 8G – GeForce 461.40
5 FPS
MSI GeForce RTX 2070 Ventus – GeForce 460.89
4 FPS
ASUS TUF Radeon RX 6800 XT OC 16GB – Adrenalin 21.2.2

 
Conclusion
This quick test shows that Radeon RX 6000 (RDNA 2) are (currently) behind GeForce RTX 20 or 30. Possible causes of this slowness: my glsl code (in raygen or hit shaders) and/or Radeon drivers and/or ray accelerator units and/or the weather…

The GeForce RTX 2080 is still a good choice if you can’t find a RTX 30. If you have a RTX 3080, RTX 3090 or a RX 6900 XT, post your scores.

The thing that surprised me was to see the ray tracing demo running on a GeForce GTX. Indeed NVIDIA added ray tracing support to GeForce GTX (see this news) but honestly, at this moment, it was a detail and I no longer remember it. I tested the path tracer on the GeForce GTX 1080 with 4 SPP and the GPU managed to run at 10 FPS! For comparison, a GeForce RTX 2070 runs the demo with 4 SPP at 115 FPS.

GeeXLab path tracing demo - Vulkan ray tracing on GeForce GTX 1080

 
Without a denoiser, we have to launch a lot of rays to get a noiseless image. Here is the scene rendered with 4096 SPP (accumulation is enabled in that case!):
GeeXLab path tracing demo - Vulkan ray tracing - 4096 SPP

 
When GPUs will be able to launch so many rays per frame (full HD resolution) at interactive framerates, real time ray tracing will be a reality. But using some optimizations (size of the ray traced image + upscaling, number of samples, denoiser, better shader code, etc) we can do very cool graphics today with ray tracing with recent GeForce RTX or Radeon RX 6000.

7 thoughts on “Vulkan Ray Tracing Tested on GeForce RTX 20/30, Radeon RX 6000 and even on GeForce GTX!”

  1. Raunien

    Tested on GTX 1660 Super – OCed +150 MHz, Linux Mint 20.1
    4 FPS @ 16 SPP

    1. boaz

      my 1650 (non super) unfortunatley refused to start the benchmark 🙁

    2. BaconBett

      GPU: RTX3090 Aorus XTREME
      CPU R9 5900X

      Results:

      SPP | FPS | GPU %
      16 | 100 | 90
      32 | 47 | 97
      64 | 27 | 99-100
      128 | 14 |99-100
      256| 7 | 100

      GPU % references the value shown in by “Graphics_1” in Task Manager

  2. Tobias

    Configuration:

    – Graphics: MSI GeForce RTX 3080 GAMING X TRIO (Driver 460.89, API 1.2.155)
    – CPU: Intel I9-9900K
    – Motherboard: GIGABYTE Z390 Gaming X
    – Memory: 32GB DDR4-3000 Corsair Vengeance LPX
    – Storage: Samsung SSD 970 EVO 1TB NVME
    – PSU: beQuiet Straight Power 11
    – OS: Windows 10 x64 20H2 19042.804

    Results:

    16 SPP: 75fps
    32 SPP: 40fps
    64 SPP: 22fps
    128 SPP: 12fps
    256 SPP: 6fps

  3. Uwe Bölt

    Configuration:

    – Graphics: MSI GeForce RTX 3090 Ventus 3X (Driver 461.81)
    – CPU: AMD Threadripper 3960X
    – Motherboard: ASRock Taichi TRX40
    – Memory: 64 GB DDR4-3600 G.SKill
    – Storage: Samsung SSD 980 Pro 2TB NVME
    – PSU: beQuiet Dark Power Pro 1200 W
    – OS: Windows 10 x64 20H2

    Results:

    16 SPP: 97 fps (GPU-Utilization 14%)
    32 SPP: 50 fps (GPU-Utilization 16%)
    64 SPP: 27 fps (GPU-Utilization 17%)
    128 SPP: 14 fps (GPU-Utilization 18%
    256 SPP: 8 fps (GPU-Utilization up to 30%)

    Unfortunately, the benchmark is extremely limited by the CPU!

    1. JeGX Post Author

      Thanks for your scores.
      Question: how do you measure the GPU usage?
      Looks like you use Windows task manager. In that case you have to look at the Graphics_1 sensor, not the 3D one.

  4. Krom_HK

    Configuration:

    – Graphics: GIGABYTE GeForce AORUS RTX 3080 XTREME 10G (Driver 471.41, Vulkan 1.2.175, DX 12.1, OpenGL 4.6)
    – CPU: AMD Ryzen 5 3600
    – Motherboard: ASUS STRIX X590-F Gaming
    – Memory: G.Skill Trident Z Neo 32GB (2x16GB) DDR4 3600 CL16
    – Storage: Samsung SSD 970 EVO PLUS, 500GB M.2 NVMe
    – PSU: Seasonic Focus Plus Platinum 750 W
    – OS: Windows 10 Home x64 21H1 19043.1110 (Windows Feature Experience Pack 120.2212.3530.0)

    Results – MAX fps with non OC mod (with OC it would be a bit more):

    16 SPP: 98 fps
    32 SPP: 50 fps
    64 SPP: 25 fps
    128 SPP: 13 fps
    256 SPP: 7 fps

    This Benchmark ver. 2021.2.18.0 used CPU between 3% – 15% (Benchmark is currently not limited by CPU performance).

Comments are closed.