Ubuntu 16.04 running Roon Core 1.6 Build 401. Library cifs mounted. Installed about a week ago, so library has been fully analyzed. Roon controller doesn’t show any activity in the core.
Server running as VM.
Network Details (Including networking gear model/manufacturer and if on WiFi/Ethernet)
Wired Ethernet. 3 RAAT endpoints (raspberry pi’s) and a Squeezebox.
I’m seeing higher than expected CPU load when idle. I don’t recall a high load when I tested prior versions of Roon, but I haven’t run Roon for an extended period of time before.
When idle, it’s maxing out a little over a single core. Most of this is coming from the “Threadpool work” processes. Of the dozen that are running, 5 or 6 are hovering around 10% +/-, the rest less. This is with no controller apps connected.
When I connect a controller (mac desktop), I see load temporarily go up on the workers and then fall back to the same.
Nothing unusual in the logs except there was a crash in the mono runtime at some point.
I’d expect the worker threads to be mostly sleeping when nothing is happening.
Q: What is the expected idle load on a Linux server? If it’s near zero, I’ll look a little further into the interrupt processing on the VM.
Can you share some screenshots of the current CPU load? The mono crash is also not a good sign, how have you set up the Ubuntu core, have you followed our Linux Install Guide? Have you made sure to install all the dependencies?
The install was a normal packaged install, I didn’t do anything manually. All dependency should be satisfied.
I reboot the system and watched what happens on startup. I see the media brokers scanning. While that’s happening, the thread pool is idle. Once the media scanners are done, the thread pool kicks in. If all the threads in the pool were at the same load, I’d say there’s something odd with how they’re being put to sleep, but they’re at all different loads.
What should I expect for an idle system? Here’s a ‘top’ snapshot showing threads.
Thanks for sharing that screenshot. There are lots of things Roon can be doing in the background during idle, like retrieving updated metadata for all your albums.
Just keep in mind that the Roon Core is designed to be reasonably “heavy” so I wouldn’t get too hung up about resource usage, unless it’s causing other issues.
Are you experiencing any other symptoms? Dropouts? Slow performance in Roon? Resource problems with other apps? It’s ok if you’re just wondering about the numbers, but these don’t look concerning to me.
I’m mostly looking for what I should be expecting? If that’s normal, ok. If it’s not, then I’ll dig some more. There are sometimes odd interactions with VMs and timers/locks/interrupts.
I put ‘netdata’ on that system to watch it over time.
If you tail /var/roon/RoonServer/Logs/RoonServer_log.txt, does it show indication of any background processing? Roon is pretty verbose to its log when it’s doing stuff…
Going back to the roonserver.log… stopped the service, restarted. I’m getting errors I didn’t see on a fresh boot. It cycles a few times and then starts.
It’s also not very chatty. Here’s a bit of the tail. Is there a startup flag for more verbose logging? The log doesn’t have timestamps or subsystem tags, is that normal?
Initializing
Started
Not responding
aac_fixed decoder found, checking libavcodec version…
has mp3float: 1, aac_fixed: 0
Error
Initializing
Started
Not responding
aac_fixed decoder found, checking libavcodec version…
has mp3float: 1, aac_fixed: 0
Error
Initializing
Started
Not responding
aac_fixed decoder found, checking libavcodec version…
has mp3float: 1, aac_fixed: 0
Running
That doesn’t jive with what I see in my logs. When it’s doing stuff, it outputs an epic crapton of log entries. Even when it’s idle, every few seconds you get the .net VM stats status messages (mem allocated, etc).
Not normal in my experience running for about a year on Archlinux (Audio-Linux). Idle is normally less than 1% and only a single thread. NOS playing for me is about 3-15%, it ebbs and flows with short bursts to 15% that last moments then back to 3-5%.
I’ve never seen a process called Threadpool work though.
Yeah, I’m going to blow away the whole thing and reinstall. I didn’t do any manual install, it’s still all stock Roon installer, so it should be spewing. I need to reinstall anyway one more time to have it run as non-root.
To RoonLabs folks - bad form having the default installer not create a roon user. Even if you didn’t drop privileges on the filesystem mounter, it would be much better than today. In the long run, a culture of good security hygiene will keep you out of the bad press that noone wants. For example, [here].(https://twitter.com/hashtag/0day).
Threads, not processes. Hit the ‘H’ key in top (not htop, that’s not pickup up the tid name) or something like ‘pstree’. If neither of those work, go old school with
I just wanted to check in here with you, are things stable after an OS reinstall? Also, I will be bringing your suggestion to the technical team to see if they want to comment on this aspect: