ioquake / ioq3

The ioquake3 community effort to continue supporting/developing id's Quake III Arena
https://ioquake3.org/
GNU General Public License v2.0
2.43k stars 530 forks source link

macOS Big Sur RX580 ioquake3 runs in "power save mode" #564

Closed lyons88 closed 2 years ago

lyons88 commented 2 years ago

IOQuake3 isn't triggering the higher clocks of my RX580 in macOS Big Sur( Intel ) The RX580 stays @300Mhz Core and Memory Clocks when running the game.

NuclearMonster commented 2 years ago

Can you say what framerate you're getting? (Use cg_drawfps to display the framerate in-game)

lyons88 commented 2 years ago

In the time demo I'm getting about 335 FPS with s_initsound 0.

I have a utility( OpenGL Driver Monitor ) to monitor the clock rates for the card while I run the demo or play the game and they never move from 300Mhz.

These clocks should be ramping up to the max( 1340Mhz Core/ 2000Mhz Memory ) when we call the OpneGL context( launch the game ).

Calinou commented 2 years ago

These clocks should be ramping up to the max( 1340Mhz Core/ 2000Mhz Memory ) when we call the OpneGL context( launch the game ).

This only occurs if the game incurs significant enough load on the GPU. Lightweight GPU workloads intentionally don't cause clocks to raise to the maximum value to save power. Otherwise, GPU clocks would raise to the maximum value as soon as you start a web browser, as they all use hardware acceleration now :slightly_smiling_face:

Modern high-end GPUs can easily run Quake 3 at 333 FPS while staying on their boot clocks (or in an intermediate state).

NuclearMonster commented 2 years ago

Looks like everything is working as best as it can to the GPU driver. 300+ FPS sounds great!

lyons88 commented 2 years ago

Cranking up the graphics settings resolves the issue.