Don’t worry about system load…it’s not really an indicator of anything by itself.
As for kodi.bin using that much CPU when essentially idle, it often has to do with either the skin you use or add-ons you have installed. My Vero 4K idles at about 5% CPU when using the Titan skin, which has a few background processes (random pictures, etc.), but I don’t have any add-ons beyond the basics.
Well, the skin is the default of OSMC, I haven’t changed anything there.
As for the system load, it actually is an indicator of how many processes need cpu time on average (2.3 meaning that 2.3 processes were on the run queue on average). And a process inside the run queue is a process which is anything but idle.
Furthermore, if I pause any movie and click on the info, from the 4 cpus, the first is always at about 30% usage (used by kodi.bin). Which means that kodi is actually doing something…!
I just checked and my usage and load seems similar to yours, but mine isn’t warm at all and I don’t experience any issues with it so not sure why yours go warm. I’m using a fairly default setup with estuary or whatever the skin is called.
This is not true, as processes in “uninterruptible sleep” count towards the load average, but they are waiting on things like disk I/O. Again, by itself load average means almost nothing. You also have to take into account the average over time (is it going up/ going down/steady?), and how many CPUs you have. The rule of thumb is that having long term load average lower than your CPU count means your system is basically “idle”.
If you want to see more, first use “U” in top to filter by only the osmc user. Then use the
“V” and “H” keys to give you a tree view and you will see which threads are taking actual CPU. Here’s what mine looks like:
Note that according to the kernel, all threads in kodi.bin are “sleeping”…none are in a runnable state. You can’t see the runnable threads, as they are not owned by osmc, but rather by root (i.e., the kernel, or the “top” process).
As @nabsltd said, this is not true. On a quad code system, a load average of 4.0 is the same as a load average of 1.0 on a single core system. So your load average of 2.3 is roughly the same as .57 on a single core system.
Exactly. And would you say that a single core system with a load of 0.57 is “idle”? It is not, something is using up the cpu (but not at 100% - there is room for more utilization). Something is being done. That is the point of my post, kodi, when stopped, should be at 0%. But it is not. It is at about 30%. Why?
Well, mine switches between runnable and sleeping! But since it is mostly sleeping and we get one update every second or so, you get the characterization of “S”, since it is more probable to hit it as sleeping when refreshing the stats. I have actually seen it as “R” many times. For example:
Tasks: 140 total, 2 running, 137 sleeping, 0 stopped, 1 zombie
%Cpu(s): 6.2 us, 1.1 sy, 1.1 ni, 91.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1832388 total, 78156 free, 391920 used, 1362312 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 1249944 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
8319 osmc 20 0 699024 197112 14500 R 31.4 10.8 2122:21 kodi.bin
3222 debian-+ 20 0 187328 102132 3580 S 0.8 5.6 189:37.63 transmission-da
11771 osmc 20 0 5536 1560 984 R 0.8 0.1 0:00.06 top
84 root 20 0 0 0 0 S 0.4 0.0 9:40.42 kthread_di
11403 root 20 0 0 0 0 S 0.4 0.0 0:09.46 kworker/1:0
1 root 20 0 26504 2808 1572 S 0.0 0.2 11:37.22 systemd
Yes, Kodi is running, and it’s GUI is well know as a CPU hog. I get the same running it on Linux Mint. The point is that a LA of 2.3 is not that bad. Read the article I linked. They say anything below .7 is not worth worrying about.
It seems that the screensaver and specifically “dim” is to blame. I’ve disabled it and, lo-and-behold, kodi dropped from 30-40% to 7%-20% cpu usage. I’ll continue to monitor the system and report back.
Never, what you see is most possible the effect that while you saw “30-40%” you were in another menu like the main menu whereas “7-20%” you see in another like being in settings -> interface -> screensaver or so.
If you get your CPU utilization numbers with top the sample intervals are too short and therefore the values are too “spiky”.
Try to get longer update intervals in top like
top -d 15.0
which gives you averages over the longer time windows and allows you to better compare effects of changes.