Whassup fellow quakers,

welcome back to my (not-so-)monthly analysis of QC performance numbers, time to get back into some sweet D A T A.

I wasn't able to put out an analysis of the previous patch thanks to the genius addition of playlists which made it pretty impossible to find a Sarnath FFA match (which is required for my tests), but now those have been removed and I'm back into the performance game.

I took the time off to expand and improve my testing tools, in particular I added 1% and 0.1% LOWs in the frametime stats calculated by piece of homemade software, and also adding a couple more tests to the suite, which may shed some light on the game' s current performance status and issues. In this month's post you can find:

The usual VSync, 125 FPS cap and Uncapped frametimes testing, to compare with the previous patch results

[NEW] Re-run the 125 FPS cap test but using the external RivaTuner's cap to see if it made any difference

Some tests run alone in a custom match, just standing still or running around the map shooting like crazy, or trying specific things (more details below) to see how the engine behaves

A test with Gore disabled, to see if it has any impact at all on the game's performance

[EDITED] I also tested Zander101's method for solving memory leaks and reducing the game's stutter/crashes, which consists in re-installing VCRedist packages and setting with the system pagefile size to 150% of your RAM; haven't been experiencing memory leaks in a long while now, but I wanted to see if it has any real impact on the game or if it's only some kind of placebo effect.

Testing methodology is the same as always: fresh game restart, FFA with 8 players, using Slash and sliding around fast, map is Ruins of Sarnath, recording frametimes with Fraps from the starting champion spawn animation to the ''Xth place'' screen at the end. You can find more details about testing methodology in previous posts like this one.

PC Specs and Settings: [NEW]



CPU: AMD Ryzen 1500X 4C/8T @ 3.8GHz

MOBO: ASRock Fatal1ty X370 Gaming K4

RAM: 16Gb TridentZ DDR4 3200Mhz Dual Channel

GPU: MSI Gaming RX470 OC @ 1300/1750MHz

Game is installed on an hard drive and not on SSD

RESULTS (discussion below) : as you can see, the 2 new values for 1% and 0.1% LOW frametimes got added to the stats, we can' t compare it to previous patches but it's gonna be an interesting metric to look at in the future. Also, sadly I got no data on the previous patch so the last data I can compare this to comes from the April patch...



On the left you can see the graphs referring to the old April patch, on the right the updated tests of the August patch, so you can compare them directly

1a. APRIL patch running with VSync enabled

1b. AUGUST patch running with VSync enabled 2a. APRIL patch running with an internal 125 FPS cap in place 2b. AUGUST patch using the internal 125 FPS cap 3a. APRIL patch running with an uncapped framerate 3b. AUGUST patch running without any framerate cap 4. [NEW] The game running with RivaTuner's 125FPS cap

5. AUGUST patch running the Gore effects disabled 6. AUGUST patch performance after trying re-installing VCRedist packages and expanding the pagefile size to 150% of my RAM 7. AUGUST patch, some tests run alone in a Custom Match 8. AUGUST patch, more Custom Match tests, this time looking at scoreboard/UI performance



DISCUSSION OF RESULTS : and comparison with results of the last patch

In all comparison tests, the new August patch looks awful compared to the how the game was in April, across the board all tests show less consistent frametimes and lower overall framerates. Bad bad bad!! Due to the aforementioned performance degrading that we're experiencing, this is the first time that I feel like playing with an Uncapped framerate may yield better results compared to using the in-game framerate limiter; uncapped shows some minor issues with Slash's sliding but overall feels more responsive and looking at the graphs using 125 FPS cap right now does not help in keeping those frametimes consistent. [NEW] I'm still trying to wrap my head around this, and I may need the help of you guys. Testing with RivaTuner's external 125 FPS cap definitely felt smoother while playing (I'm pretty sure that was not placebo on my end, since I wasn't expecting any improvement at all), but looking at the numbers and graphs recorded by Fraps the performance is even slightly worse than in my in-game 125 FPS test. I'm starting to think that Fraps measures frametimes at a weird point in the API call , which doesn't tell the whole story of the user's experience, any tips on this ?

I cannot tell for sure since I don't have data to back this up, but I'd recommend you to try and use RTSS for capping your framerate and see if you feel any improvement at all, just be warned that it may introduce some additional input lag in the game. During the last community stream, I thought that the community managers' claim of Gore having ''absolutely no performance impact'' was pretty bold, so I wanted to test it; in the end, they were pretty much right, my testing revealed no major impact when having it enabled and the only differences seen in the numbers are well within margin of error (though this setting may have an impact on very low-end PCs). Good job on this. Reinstalling VCRedist packages and messing with the pagefile size doesn't seem to have had any effect for me, performance in game felt pretty much the same and looking at the numbers it looks like it has even gotten a bit worse (re-tested that twice just to make sure about this). This method looks to yield positive results only in case you were experiencing memory leaks before, if you were I strongly recommend trying this out since it annot hurt you but it may improve your game's performance, otherwise do not waste your time on it. A note to the developers, Zander101 found out that this leaks are generated by VCRedist 2015 error dumps being stored in the pagefiles when the computer has VCRedist 2017 installed because the game somehow tries to pull data from both versions (we still can't figure out how 2 DLLs can be loaded at the same time but still), we think that a simple fix would be to set the game's VCRedist pre-requirement from 2015 to 2017 (which overwrites the older version) so this mixing up of DLL versions should not happen any longer. The Custom Match test really shows some interesting stuff this time, first of all see those big pairs of spikes near the end ? That's the only deaths I had in the test runs and confirms that the biggest spikes seen across all tests are due to the players' death and respawning; I've been pointing this out for months now, I'd like to see some optimizations on this front by the developers.

The other major discoveries that I made with this specific test comes from the huge frametime rise that you see near the beginning of both graphs:

- in the first test (graph #7), that's when I started going back and forth into the tribolt teleporter on Sarnath, this shows that the game code is poorly optimized when it comes down to handling player crossing portals (which may also be one of the causes for the weird netcode behaviour that makes players die when they're already on the other side of the teleporter).

- [NEW] in the second test (graph #8), those spikes were caused by me spamming TAB to open the scoreboard or ESC to open the menus, which shows that UI handling in this game also hits performance pretty hard.

I'm asking developers to take a look at these specific parts of the code to see if any improvements can be made to reduce the performance impact of this actions in game, dropping 60 or more FPS is never a good thing...

CONCLUSIONS (TL:DR) : Performance has gotten worse! It needs to receive some love by the programmers !! I appreciate some of the developers' efforts in optimizing the game, for example making the Gore effects accessible to everybody by not having them impact the game's performance, that's great news, but the whole frametime consistency situation is getting out of control right now. Quake needs to be stutter-free again! Also, I can't speak for everybody, but all this miraculous methods for improving performance and getting rid of stutters never show sign of improvements for me, you should try on your own PC, but be aware of placebo effects.

For the first time since I started this series, I find myself recommending to play with an Uncapped framerate rather than using the in-game limiter, this is because frametimes are all over the place anyways so atleast uncapped grants you faster response times and higher framerates. RivaTuner's framerate cap may be an option but it's kind of uncertain right now.



Thanks to anyone who actually took the time to read all of this, let me know your opinions and feedback in the comments down below!

See you in the arena,

- JackaL