mixxxdj / mixxx

Mixxx is Free DJ software that gives you everything you need to perform live mixes.
http://mixxx.org
Other
4.38k stars 1.26k forks source link

Win 10: High CPU load Radeon RX 480 and GL waveform #10933

Closed RodSmart closed 1 year ago

RodSmart commented 1 year ago

Bug Description

No Tracks Loaded Into Decks = 1 or 2% CPU 1 Track Loaded but not playing = about 10% CPU 2 Tracks Loaded but not playing = about 35% CPU 2 Tracks Loaded and 1 playing = 100% CPU and jerky animations on interface. Same result with waveforms switched off. Task Manager only shows 10% CPU and less than 50% memory usage. Nothing else running at the time Mixxx Ver 2.3.3 running on fairly new HP laptop AMD Ryzen 3 3300U with Radeon Vega graphics. Windows 10

Version

2.3.3

OS

Windows 10 64 Bit

daschuer commented 1 year ago

For Mixxx it should is not much of a difference whether a track is loaded or not.

So my guess is that it is something Skin related. Does changing skins makes a difference? Does it make a difference if you use the library player after pressing spacebar?

Does the --saveMode command line option make a difference.

veeroohre commented 1 year ago

I have a similar problem: No track loaded but very high cpu load (see screenshot). Since the load drops to approx. 50 when pressing "space" my suspicion is it's gpu related (even though no track is loaded and therefore no waveform is shown). I have a AMD radeon RX480 with the latest stable drivers (see screenshot), an Intel Core i5-6600K and Windows 10 Pro 22H2. Quite old but playing games like Doom Eternal or Division 2 run ok. Think these games should stress the GPU more.

"--saveMode" did not change anything. Changing skin to "Deere" did not help, too.

mixxx radeon

ronso0 commented 1 year ago

Before we try to debug this, please try 2.4-beta

veeroohre commented 1 year ago

I tried it. Unfortunately same result. I also tried it under Ubuntu. There the CPU load was significantly lower.

Edit: My mp3's are stored on a nas. So I use a network share to access them.

Unbenannt mixxx.log

daschuer commented 1 year ago

I don't think that the NAS alone is the culprit in your case. Since "--saveMode" does not change the issue, we can also rule out waveform/GPU issues. Interestingly all CPUs are equal used. The most CPU consuming Audio thread is a single CPU issue. Ideally Windows should schedule it in the same CPU core to keep the core cache hot. @JoergAtGithub: Is this the case in windows? Mixxx uses multi theads for analysis and caching tracks. This is done after Mixxx has been idle for a while. Can you confirm this or is the CPU load always high?

I can also imagine that a virus scanner is extra thoroughly and does some work from the Mixxx process. Does the problem remain if you pause all security applications?

daschuer commented 1 year ago

Which Audio API do you use with which buffer size?

veeroohre commented 1 year ago

Is save mode implemented in the beta? Unbenannt

After some seconds after the start the cpu load goes up and stays there.

Turning off the windows defender on-access scanner has no effect.

Here are my audio settings: Unbenannt

BTW: Thank you for your help!

daschuer commented 1 year ago

Oh sorry for the typo, it is --safeMode.

daschuer commented 1 year ago

Unrelated: The GUI alignment in the audio preferences can be improved.

veeroohre commented 1 year ago

I tried it again and it works. Now the load is around 1 to 2%

So it's a graphical/GPU issue?

I change the frame rate to 60. Could that be a problem?

veeroohre commented 1 year ago

Unrelated: The GUI alignment in the audio preferences can be improved.

Do you mean by me? I shrinked it to save some screenshot space.

veeroohre commented 1 year ago

Unbenannt

daschuer commented 1 year ago

No. Every recent device should be able to do 60 Hz. Can you try to run without the flag again and check if any of the waveform option fix the issue?

Does disabling spinnies change something or the flag: --disable-vumetergl

veeroohre commented 1 year ago

Strangly after restarting into normal mode the cpu load is lower: Unbenannt

What are "spinnies" and where to I find the option (sorry I'm German)?

veeroohre commented 1 year ago

One more change after leaving safe mode (think it wasn't before): The cpu load goes down when I minimize the mixxx window but stays high when not (mixxx maximized in the backgroud behind other windows). To me it still sounds like a gpu problem.

veeroohre commented 1 year ago

"--disable-vumetergl" seems to lower the cpu load further but not as much as "safemode" does.

Unbenannt

veeroohre commented 1 year ago

When I use "Simple (GL)" cpu goes up to maximum possible (around 80%). But even "empty" takes 45-50% cpu.

It always take 1-2 seconds to apply the new waveform settings (inkl. freeze and rebuild of window). Is that normal?

Edit: All GL(SL) settings cause maximum cpu load. Maybe an OpenGL issue?

veeroohre commented 1 year ago

@daschuer Do you need more information or did I miss something?

daschuer commented 1 year ago

Edit: All GL(SL) settings cause maximum cpu load. Maybe an OpenGL issue?

Ok, so you have a working setup with non GL waveforms, right?

Since we have reports from other windows 10 users that Mixxx 2.3.5 works good and 2.4-alpha works even better with GL waveforms, it can be a configuration issue on your side.

Did you use any non default settings in a Radeon tweak tool? There is also the Adrenaline 23.5.2 driver available and the Pro 22.Q4 with a slightly advanced driver version number. It is however suspicious that it is offered for download but the RX 480 is not listed in the release notes.

veeroohre commented 1 year ago

Yes, it's working but with a high cpu load. I will try to use a different driver and see if it helps. This is really strange because I can run 3d games without a problem.

I only use the drivers and no additional tools (and therefore tweaks) from AMD. Too much bloatware in my opinion.

Since I am the only one with this problem you could close this issue.

ronso0 commented 1 year ago

We ahould not assume you're the only one. Others with this issue may simply have uninstalled Mixxx without reporting it.

JoergAtGithub commented 1 year ago

Could you try to set the Windows environment variable QT_NO_OPENGL_BUGLIST (to any value) before starting Mixxx. Or play with the other environment variable described here: https://doc.qt.io/qt-5/windows-requirements.html#dynamically-loading-graphics-drivers

veeroohre commented 1 year ago

Sorry, not now. I'm on vacation soon. Will come back to you after my return.

Am Di., 27. Juni 2023 um 13:23 Uhr schrieb JoergAtGithub < @.***>:

Could you try to set the Windows environment variable QT_NO_OPENGL_BUGLIST (to any value) before starting Mixxx. Or play with the other environment variable described here: https://doc.qt.io/qt-5/windows-requirements.html#dynamically-loading-graphics-drivers

— Reply to this email directly, view it on GitHub https://github.com/mixxxdj/mixxx/issues/10933#issuecomment-1609307364, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACDMBOBAZ4GBHWISG6DB6LTXNK7CLANCNFSM6AAAAAAQZQF2SI . You are receiving this because you commented.Message ID: @.***>

JoergAtGithub commented 1 year ago

The latest Beta contain further waveform fixes for Windows. It would be great if you could retest it again.

veeroohre commented 1 year ago

The newest beta 81 runs much better with my system. Approx. 38% when playing. After start Mixxx eats around 32% of my cpu. Seems to be quite high for an idle program. Switching to "empty" waveform pushes app under 1%. All in all much better but higher than expected. Used driver: 4.6.0 Compatibility Profile Context 23.7.2.230718 (Radeon (TM) RX 480 Graphics)

Edit: DJuced eats 20%/55% (idle/playing).

daschuer commented 1 year ago

Thank you for your confirmation. I think we can close it than. Please reopen if you still see an issue.