2018-12-28, 09:31
Hello,
I noticed, that (most propably because Kodi changes in time) the idle CPU usage of Leia release is around 14-20% (Odroid C2). When I tested Jarvis release (16.1), idle CPU usage is around 2-6% (and was that also on Raspberry Pi2). This is a bit important for me, as I am using 24/7 installations.
I am suspecting that this is because some changes in rendering system inside Kodi (?), because I remember, for 18y old PC, I limited GUI fps by limitframes variable@Application.cpp CApplication::Render()
and thats greatly (20% --> 4%) reduce Idle CPU usage, when ARM box/Old PC was running, but TV shutdowned and not used (=actived [Black] screensaver).
Is it possible create option (or screensaver), what would cause lowering FPS to 1-5, when screensaver is active? Or lets say for Black screensaver? There are quite many 24/7 ARM boxes, and this would decrease Idle CPU usage significantly for them, and for Black screensaver it doesnt make sence to render anything anyway?
I tried little similiar modification on the Leia, but nowadays there is new code for CApplication::Render(),
but seems thats not work for my test case for some reason (dunno how to differentiate this for just Black screensaver, for possible PR in future).
What do you think of that idea? Could it be somehow adressed to improve user experience? (For example on Rpi2/Odroid C2 running Kodi, the difference in CPU Idle use in Idle is 4% (LibreELEC 7.0.3) vs 20% (LibreELEC 9) without any modification from me, with black screensaver on inactivity).
Correction: with Irix mode off top results drops to
4-6% with default config
1.5-3.5% with `smartredraw true`
Busybox’s top from 7.0.3 run in “Solaris mode”, procps-ng from 9.x runs in Irix mode. Not sure yet, why average load doesnt fits, but it seems I was wrong and CPU usage is relativelly same. With
I noticed, that (most propably because Kodi changes in time) the idle CPU usage of Leia release is around 14-20% (Odroid C2). When I tested Jarvis release (16.1), idle CPU usage is around 2-6% (and was that also on Raspberry Pi2). This is a bit important for me, as I am using 24/7 installations.
I am suspecting that this is because some changes in rendering system inside Kodi (?), because I remember, for 18y old PC, I limited GUI fps by limitframes variable@Application.cpp CApplication::Render()
Code:
if (limitFrames) {
singleFrameTime = 30; //no need to render menu more than 25 fps on old computer
// Screensaver is on, 1 fps - idle for Raspberry, slow PC etc.
if (m_bScreenSave==true) {
singleFrameTime = 1000; // 1 fps, high wakeup latency but v.low CPU usage
}
Is it possible create option (or screensaver), what would cause lowering FPS to 1-5, when screensaver is active? Or lets say for Black screensaver? There are quite many 24/7 ARM boxes, and this would decrease Idle CPU usage significantly for them, and for Black screensaver it doesnt make sence to render anything anyway?
I tried little similiar modification on the Leia, but nowadays there is new code for CApplication::Render(),
Code:
void CApplication::Render()
{
// do not render if we are stopped, in background, or screensaver active
if (m_bStop || (m_screensaverActive))
return;
What do you think of that idea? Could it be somehow adressed to improve user experience? (For example on Rpi2/Odroid C2 running Kodi, the difference in CPU Idle use in Idle is 4% (LibreELEC 7.0.3) vs 20% (LibreELEC 9) without any modification from me, with black screensaver on inactivity).
Correction: with Irix mode off top results drops to
4-6% with default config
1.5-3.5% with `smartredraw true`
Busybox’s top from 7.0.3 run in “Solaris mode”, procps-ng from 9.x runs in Irix mode. Not sure yet, why average load doesnt fits, but it seems I was wrong and CPU usage is relativelly same. With
smartredraw
even better maybe.