Raptor Computing Systems Community Forums (BETA)

Software => Applications and Porting => Topic started by: Hasturtium on July 30, 2023, 12:49:02 pm

Title: GZDoom
Post by: Hasturtium on July 30, 2023, 12:49:02 pm
I talked about this a bit in the #talos-workstation channel over on Libera.Chat, but here goes: the short answer is that GZDoom works. All of the many libraries GZDoom takes advantage of run natively in Power, save for Asmjit (https://asmjit.com/), which is used to speed up execution of ZScript. I was wrong in the crispy-doom thread: enforcing -mcpu=power9 made a significant performance difference over the stock build options, but -DNO_WARN_X86_INTRINSICS makes no difference because of a prior commit (https://github.com/ZDoom/gzdoom/commit/8892cb619d31975394acf12b5ff52931082789e6) that disables intrinsics outright for non-x86 architectures (apparently tied to disabling AsmJit for those platforms). With that limitation in mind, the biggest single issue for GZDoom speed comes down to a lack of SIMD optimization, which apparently makes a small difference in the hardware renderer and a very big difference in the true color software renderer. From what I've read the 8-bit software renderer doesn't leverage SSE2, and it flies at 1440p or higher on my eight core machine.

GZDoom currently detects Power9 as ppc64. Defining ppc64le as a platform and then forcing -DNO_WARN_X86_INTRINSICS specifically for it would probably be a lot less demanding than generating hand-tuned Power assembly, but I do not know whether that would break the current method of disabling AsmJit. Whether this would work on Power8 is up for debate - I don't know if its lack of VSX-3 would impact SSE translation. I need to allocate more time to scrutinize the source and figure out what needs patching, but if anybody wants to beat me to the punch, they are welcome to.
Title: Re: GZDoom
Post by: tle on August 01, 2023, 02:14:38 am
How much gain in term FPS I am just curious
Title: Re: GZDoom
Post by: Hasturtium on August 01, 2023, 06:40:51 am
I'm not sure about the hardware renderer, but the devs consider it indispensable for the true color software renderer. I'd expect gains north of 50% when intrinsics are enabled.
Title: Re: GZDoom
Post by: tle on September 21, 2023, 06:31:36 am
For Fedora users, you can find the RPM at https://copr.fedorainfracloud.org/coprs/nalika/gzdoom/