What is ROON doing when system is idling?

I just installed the latest build of roon server on my INTEL NUC i7 skull canyon.
Version 2.55 Build 1559.

Suddenly I notice that the FAN is making noise even when roon is idling.

So I tried to investigate what thread is taking CPU-time on my system using top.

401 threads and so many of them taking about 1% of the CPU-time?
Broker media is very high up.
It is not scanning libraries either.
This is not good and should be fixed.

top - 12:22:06 up 6 days, 22:12,  2 users,  load average: 1,23, 1,21, 1,29
Threads: 401 total,   2 running, 399 sleeping,   0 stopped,   0 zombie
%Cpu0  : 17,3 us,  2,0 sy,  0,0 ni, 80,3 id,  0,0 wa,  0,0 hi,  0,3 si,  0,0 st
%Cpu1  : 22,9 us,  3,3 sy,  0,0 ni, 73,4 id,  0,0 wa,  0,0 hi,  0,3 si,  0,0 st
%Cpu2  : 22,3 us,  2,7 sy,  0,0 ni, 73,0 id,  2,0 wa,  0,0 hi,  0,0 si,  0,0 st
%Cpu3  : 18,1 us,  2,3 sy,  0,0 ni, 79,6 id,  0,0 wa,  0,0 hi,  0,0 si,  0,0 st
%Cpu4  : 12,7 us,  2,0 sy,  0,0 ni, 85,3 id,  0,0 wa,  0,0 hi,  0,0 si,  0,0 st
%Cpu5  : 37,9 us,  5,0 sy,  0,0 ni, 56,8 id,  0,3 wa,  0,0 hi,  0,0 si,  0,0 st
%Cpu6  : 26,7 us,  4,0 sy,  0,0 ni, 69,3 id,  0,0 wa,  0,0 hi,  0,0 si,  0,0 st
%Cpu7  : 13,0 us,  1,7 sy,  0,0 ni, 84,9 id,  0,0 wa,  0,0 hi,  0,3 si,  0,0 st
MiB Mem :  15881,9 total,   2146,4 free,   3615,7 used,  10119,9 buff/cache
MiB Swap:   2048,0 total,   2048,0 free,      0,0 used.  11915,8 avail Mem

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
1310014 root      20   0   11,3g   2,0g 231048 R  68,4  13,2  15:34.07 Broker:Media
1310056 root      20   0   11,3g   2,0g 231048 S  10,3  13,2   1:50.80 Broker:Misc
1558216 root      20   0   11,3g   2,0g 231048 R   1,7  13,2   0:02.82 .NET ThreadPool
1559078 root      20   0   11,3g   2,0g 231048 S   1,3  13,2   0:02.02 .NET ThreadPool
1310012 root      20   0   11,3g   2,0g 231048 S   1,0  13,2  21:02.00 Broker:Transpor
1384964 root      20   0   11,3g   2,0g 231048 S   1,0  13,2   2:23.28 .NET ThreadPool
1434989 root      20   0   11,3g   2,0g 231048 S   1,0  13,2   1:38.10 .NET ThreadPool
1450274 root      20   0   11,3g   2,0g 231048 S   1,0  13,2   1:29.96 .NET ThreadPool
1507160 root      20   0   11,3g   2,0g 231048 S   1,0  13,2   0:51.07 .NET ThreadPool
1507531 root      20   0   11,3g   2,0g 231048 S   1,0  13,2   0:48.61 .NET ThreadPool
1518438 root      20   0   11,3g   2,0g 231048 S   1,0  13,2   0:39.78 .NET ThreadPool
1540252 root      20   0   11,3g   2,0g 231048 S   1,0  13,2   0:20.09 .NET ThreadPool
1546091 root      20   0   11,3g   2,0g 231048 S   1,0  13,2   0:14.41 .NET ThreadPool
1558116 root      20   0   11,3g   2,0g 231048 S   1,0  13,2   0:03.34 .NET ThreadPool
1558258 root      20   0   11,3g   2,0g 231048 S   1,0  13,2   0:02.69 .NET ThreadPool
1559294 root      20   0   11,3g   2,0g 231048 S   1,0  13,2   0:01.92 .NET ThreadPool
1559340 root      20   0   11,3g   2,0g 231048 S   1,0  13,2   0:01.78 .NET ThreadPool
1562116 root      20   0   11,3g   2,0g 231048 S   1,0  13,2   0:00.41 .NET ThreadPool
1309994 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   0:04.48 .NET Finalizer
1418156 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   1:53.05 .NET ThreadPool
1427391 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   1:42.81 .NET ThreadPool
1433790 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   1:34.94 .NET ThreadPool
1434262 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   1:37.34 .NET ThreadPool
1434319 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   1:36.38 .NET ThreadPool
1434407 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   1:39.39 .NET ThreadPool
1434567 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   1:38.51 .NET ThreadPool
1434774 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   1:35.69 .NET ThreadPool
1434855 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   1:38.24 .NET ThreadPool
1434876 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   1:47.69 .NET ThreadPool
1434927 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   1:37.05 .NET ThreadPool
1435007 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   1:33.97 .NET ThreadPool
1435055 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   1:37.74 .NET ThreadPool
1442412 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   1:40.33 .NET ThreadPool
1442416 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   1:35.92 .NET ThreadPool
1442604 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   1:39.07 .NET ThreadPool
1442624 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   1:35.40 .NET ThreadPool
1447519 root      20   0   11,3g   2,0g 231048 S   0,7  13,2   1:32.71 .NET ThreadPool

Roon is maintaining it’s vast metadata collection of your library.

This is your opinion. For Roon Labs to take notice, please post in Feedback or create a support ticket. Here are usually only Roon users discussing and we can’t change how Roon works.

1 Like

Roon is maintaining it’s vast metadata collection of your library.

You mean that it is maintaining the same metadata collection more than previous version? Iteresting how you would even know that.

Further, I as a SW developer is very interested in addressing regressions on my products.
But, yeah it might not be the correct channel for this.

Interesting. May I ask how you’re able to run top on Roon ROCK? My understanding is that there’s no SSH access to it, so no command line, and no top. I run my ROCK (3440 albums)on 10th gen Intel NUC ( Core i7), and have yet to hear the fan spinning, except very briefly on reboot. Have you checked the cooling settings in the NUC UEFI?

So, again, there is a clear change in CPU-time usage after upgrade. No changes at all to BIOS or HW.
This is the Linux server running in Ubuntu.

The OP doesn’t mention ROCK or Roon OS.

What leads you to this conclusion? From what you’ve posted, Roon isn’t loading the server for what I’d consider normal backround analysis.

Therefore, I’d look elsewhere for the fan activity. It looks like you’re using a 6th generation NUC. When was it last cleaned?

The conclusion is just based on that fan activity (and CPU usage) goes up when roon server is running and down when I stop it.
The RPM of the FAN is around 2900 when quiet, system idle and inlets are clean.

I know from experience with an 8th generation NUC that dust inside the device can be a problem that progressively causes overheating. The inlets may look clean, but that doesn’t mean there isn’t a cooling issue.

The only time my i3 NUC fans run is during heavy imports with full audio analysis. I clean my NUC and server every 12–18 months.

1 Like

Thanks for the clarification. When I read NUC, my brain automatically went to ROCK. Sorry about that!

I realize this is not what you are currently wanting to resolve, but all kinds of little issues, instability, crashes, etc., went away for me after I set up a NUC as a Roon ROCK a few years back. Sharing resources with a general-purpose Linux box, in my case, didnt work well enough.

I also feel your frustration seeing CPU usage spike. There’s little I enjoy lesss on my Linux desktop PC. I’ve been using a Linux desktop exclusively since 2001. One of the things I love about it is resource management. So, yeah, I’m sure the Roon server behavior must feel frustrating. Good luck!

I’m not seeing any alarming issues with Roon server running on Ubuntu (or ROCK) since the recent fix for memory leak. And, I don’t see how 1% CPU utilization can be considered a “spike”.

Roon has always been chatty, and will constantly check and update metadata. This isn’t demanding when compared to audio analysis.

Under the conditions described, the fan should not operate whether running Roon or another media server.

That has been consistently my experience with ROCK over the years, as well. No fan noise whatsoever, even during ingesting and analyzing new files (10th gen Intel NUC).

1 Like

The aggregated CPU-usage is on 100-150%. Which is quite a lot for a 8-core machine. Enough to set the FAN off at disturbing noise levels. Let alone bumping the electricity bill unnessarily.
And again, it started after upgrade.

And again, please create a support ticket to involve Roon Labs:

Top shows that the CPUs are mostly idle. Nothing there that should cause the fans to run unless your library is too large for the hardware …

This is an old NUC, and my 8th gen. NUC outperforms that i7 processor (single core performance is more important than threads.)

How large is your library?

I’ll say this one more time: strip and clean the NUC. It’s got to be at least 10 years old.

Why should I tend to the HW when its evident that the SW is the issue?
I will try and downgrade. The library hasnt grown at the same time I did the upgrade.
What do you mean idle? All cores are working at more than 10%.

This CPU should be well passed the need for some audio transcoding.

Top … id = idle

It is, and normal behaviour for up to 100,000 tracks (on your hardware) should rarely operate the fan. For all intents, the NUC should be silent except when importing a large number of tracks and subsequent audio analysis.

Your device is old, and doesn’t perform as well as my i3 NUC, but it should run without the fan in most scenarios.

I don’t see any evidence that Roon is running erroneously. But a decade-old NUC that hasn’t been cleaned points to thermal issues not software.

Anyway, I’m repeating myself, so I will bow out.

This model has always started the fan when loaded. I remember having the same model at my work back in 2018. Always when compiling it sounded like a vacuum cleaner. Also when new.
It has a tight thermal envelope for sure.

But this is not a question of why and when/at what load this model starts the fan. Its a question of that the software after upgrade makes this model start the fan due to a higher CPU load than the previous version did.

The changes in this version obviously loads the CPU when it should not do anything.

It is bad to have SW that loads the CPU when you are not using the SW.
And dont come with the - its managing the metadata DB. Not for days it isnt.
It seems to be bad software design.

Hi @Mattias_Barthel

This thread indicates you might require assistance from Roon technical support.

To equip the Roon Technical Support team to assist you directly, please follow this link to provide the details of your case to Technical Support: Technical Support Request

Respond to the prompts there to ensure that you’ve performed basic troubleshooting and to ensure Technical Support has the full details necessary to expedite Technical Support’s investigation into the case.

Your responses will auto-generate a Community thread in the appropriate section.