Friday, March 8th 2024

Mesa CPU-based Vulkan Driver Gets Ray Tracing Support - Quake II Performance Hits 1 FPS

Konstantin Seurer, a Mesa developer, has spent the past couple of months working on CPU-based Vulkan ray tracing—naturally, some folks will express scepticism about this project's practicality. Seurer has already set expectations with a brief message: "don't ask about performance." His GitLab merge request page attracted Michael Larabel's attention—the Phoronix founder and principal author was suitably impressed with Seurer's coding wizardry. He: "managed to implement support for VK_KHR_acceleration_structure, VK_KHR_deferred_host_operations, and VK_KHR_ray_query for Lavapipe. This Lavapipe Vulkan ray tracing support is based in part on porting code from the emulated ray tracing worked on for RADV with older Radeon GPUs." A lone screenshot provided evidence of Quake II running at 1 FPS with Vulkan ray tracing enabled—this "atrocious" performance was achieved thanks to a Mesa Lavapipe driver "implementing the Vulkan API for CPU-based execution."

VideoCardz has highlighted an older example of CPU-based rendering techniques: "this is not the first time we heard about ray tracing on the CPU in Quake. In 2008, Intel demonstrated Enemy Territory: Quake Wars running at 720p resolution at 14 to 29 FPS on 16 core and 20-35 FPS at 24 core CPUs (quad-socket). The basic implementation of ray tracing in 2008 is not comparable to complex ray tracing techniques designed for GPUs, thus the performance on modern system is actually much lower. Beyond that, that game was specifically designed for the Intel architecture and used a specific API to achieve that. Sadly, the original ET demo is no longer available, it would be interesting to see how it performs today." CPU-based Vulkan ray tracing is expected to hit public distribution channels with the rollout of Mesa 24.1. Several members of the Phoronix community reckon that modern AMD Threadripper PRO processors have the potential to post double-digit in-game frame rates.

WinElchtest: "Video of a ray traced version of Enemy Territory: QUAKE Wars."


Intel's ray tracing research group produced this port, according to the video's description section.
Sources: Mesa GitLab, Phoronix, VideoCardz, Tom's Hardware
Add your own comment

9 Comments on Mesa CPU-based Vulkan Driver Gets Ray Tracing Support - Quake II Performance Hits 1 FPS

#1
Cheeseball
Not a Potato
Welcome back software rendering. :laugh:

I used to play Quake (classic) in MS-DOS (6.22, Windows 95) with 8 GB MB of RAM, which I believe was enough for ~60 FPS at 800x600.
Posted on Reply
#2
Denver
It doesn't seem realistic to me to say that it's running at 1fps.
Posted on Reply
#3
Fouquin
Intel also had Quake 3 ray traced in real time on a cluster of glorified Pentium 4s (Xeon MP) in 2004. This paper even acknowledges the Quake 2 Vulkan path tracing project near the end.

"In the network cluster with 20 nodes, each equipped with a dual-core CPU, the frame rate was at 20 frames per second for a resolution of 512 × 512 pixels at 4× supersampling."

They used OpenRT though, not a proprietary API at the time by any means. The most proprietary thing they did was work around IdTech 3 which wasn't open source yet at that point to remake assets for the engine.
Posted on Reply
#4
LabRat 891
Looks like a step towards separating and parallelizing RT functions. Neat.
DenverIt doesn't seem realistic to me to say that it's running at 1fps.
A. Early development.

B.
Several members of the Phoronix community reckon that modern AMD Threadripper PRO processors have the potential to post double-digit in-game frame rates.
Makes me wonder if anyone still has a working Intel Larrabee hanging around.
Posted on Reply
#5
Denver
LabRat 891Looks like a step towards separating and parallelizing RT functions. Neat.


A. Early development.

B.

Makes me wonder if anyone still has a working Intel Larrabee hanging around.
From what I observed in a discussion, apparently the dev said he is rendering 1 frame in 15 minutes, what is being shown in the overlay is an illusion . The processor used was a Ryzen 5600x.

People don't understand the computational level required to run RT. :')
Posted on Reply
#6
DemonicRyzen666
DenverFrom what I observed in a discussion, apparently the dev said he is rendering 1 frame in 15 minutes, what is being shown in the overlay is an illusion . The processor used was a Ryzen 5600x.

People don't understand the computational level required to run RT. :')
This has always been the truth.
I'd rather bettering immersion features like dynamic vegetation & physic.
Lighting is the least of my worries.
Posted on Reply
#7
ty_ger
The question is 'why?'. Is this just a challenge to tackle? Or does the developer think that in 10 years when CPUs catch up, people will want to use it?

It looks terrible. It performs terrible.

I don't get it. I don't get ray tracing in general, but this is next level.
Posted on Reply
#8
LabRat 891
ty_gerThe question is 'why?'. Is this just a challenge to tackle? Or does the developer think that in 10 years when CPUs catch up, people will want to use it?

It looks terrible. It performs terrible.

I don't get it. I don't get ray tracing in general, but this is next level.
Depending on the creator's age bracket and professional status... This seems like the kind of project you'd put in your Portfolio.

So, yes. It is (at least in part) for the challenge. The other part (I'd imagine) is demonstration of skills and technique.
The mentality seems common amongst auto-didact programmers, or at least the ones in the Emulation community (reaching back decades).
Posted on Reply
#9
Zareek
ty_gerI don't get it. I don't get ray tracing in general, but this is next level.
I agree, I don't really see the point. Too much performance loss at this point even on Ngreedia hardware.
Posted on Reply
Dec 19th, 2024 07:24 EST change timezone

New Forum Posts

Popular Reviews

Controversial News Posts