Ray tracing can run without a GPU, if you like slideshows — Quake II RTX demoed at 1 FPS with CPU-based ray-tracing

Quake II RTX
(Image credit: Nvidia)

A Mesa 3D Graphics Library developer has implemented support for CPU-based ray-tracing in Vulkan, reports Phoronix. While we applaud the effort, early testing of the driver in Quake II RTX indicates mainstream modern CPUs aren't going to convince anyone to give up their graphics card. Developer Konstantin Seurer's screenshot shows that the ray-traced version of Quake II only runs at 1 frame per second after all his Vulkan Lavapipe driver travails.

(Image credit: Konstantin Seurer)

Linux developer Seurer admits his work is "mostly" based on porting code from the RADV Vulkan drivers, which were designed for owners of old and new AMD Radeon graphics cards (including emulated RT on pre-RDNA2 GPUs). The new code is implemented in Lavapipe, a CPU-based software Vulkan driver (for Mesa version 21.1 or newer). Specifically, Seurer's work supports VK_KHR_acceleration_structure, VK_KHR_deferred_host_operations, and VK_KHR_ray_query, in Lavapipe. This is enough to get real-time ray-tracing working via a CPU-based render path, but performance leaves much to be desired.

The Lavapipe: Implement VK_KHR_ray_query merge request by Seurer raises many questions. He provides evidence that CPU-based ray-tracing isn't going to scare GPU makers and their partners in 2024, but some more data would have been very welcome. It would have been more illuminating to know what kind of CPU was used in the developer's Quake II RTX test system, for example. The embedded screengrab shows the game was being played at 720p, but it could be a downsampled image. Moreover, Quake II RTX gamers have lots of settings to play with to fine-tune their experience. Adjusting levels of global illumination, texture filtering, reflection/refraction depth, sharpness, and more can all impact performance. We don't know what graphics/video settings were used in the 1 fps 'gaming' session.

(Image credit: Nvidia)

While the consumer CPUs we have in 2024 might not be powerful enough for enjoyable real-time ray-traced gaming, we don't know what kind of crazy CPU power we will have access to in five or ten years. Thus, CPU-based ray-tracing support has a chance of being useful one day. We also wonder what one of the newest AMD Threadripper chips could manage using this Lavapipe Vulkan ray-tracing implementation coming to Mesa 24.1 (RC1 is due in April this year).

Mark Tyson
Freelance News Writer

Mark Tyson is a Freelance News Writer at Tom's Hardware US. He enjoys covering the full breadth of PC tech; from business and semiconductor design to products approaching the edge of reason.

  • emike09
    It'd be nice to know what CPU was used here.
    Reply
  • Metal Messiah.
    Kindly correct the article's title/heading, as it can be misleading.

    The game was NOT running at 1 FPS as shown in the screen. 1 frame is actually been rendered every 15 minutes here. The overlay was displaying the wrong info. I have confirmed this from the developer/tester.

    emike09 said:
    It'd be nice to know what CPU was used here.

    AMD 5600X CPU.
    Reply
  • umeng2002_2
    With enough memory and time, any computer can compute anything (probably).
    Reply
  • emike09
    Metal Messiah. said:
    AMD 5600X CPU.
    Thanks! Not a beast of a CPU by any means. I've got a server at work with dual Xeon Platinum 8470 CPUs. 104 cores, 208 threads. The DB guys would never let me test with it, but I'd be super curious to see how it'd run!
    Reply
  • jonathan1683
    I remember getting like 200 fps with my voodoo 3
    Reply
  • Geef
    emike09 said:
    The DB guys would never let me test with it, but I'd be super curious to see how it'd run!

    You might even be able to break the 1 FramePerSecond barrier set by Tomshardware!
    Reply
  • Udyr
    umeng2002_2 said:
    With enough memory and time, any computer can compute anything (probably).
    Not really. Some systems would simply crash/freeze due to lack of resources and compute power.
    Reply
  • Alvar "Miles" Udell
    Reminds me of PhysX on CPUs because of its x87 code.

    https://www.tomshardware.com/reviews/nvidia-physx-hack-amd-radeon,2764-4.html
    Reply
  • PiersPlowman
    Pah. Years ago I played with Persistence of Vision Raytracer on an Atari ST. One scene, an image of a toy car in a fully texture-mapped scene took 36 HOURS to render at 320x200 resolution. That was with AA enabled though.

    A friend's DX50 did the same scene in about the same time as the 5600x to render a frame from Quake II. Oh, for want of an FPU...
    Reply
  • tamalero
    emike09 said:
    Thanks! Not a beast of a CPU by any means. I've got a server at work with dual Xeon Platinum 8470 CPUs. 104 cores, 208 threads. The DB guys would never let me test with it, but I'd be super curious to see how it'd run!
    Do it.. for science!
    Reply