Unexplainable spikes in homey load

Hi, i’ve had spikes in my homey load since forever.
im using Prometheus and grafana to get metrics of my home, but it also shows me spikes on my homey load, like every 50 minutes to a load of 2.

There always there, when nobody is at home, when everybody is asleep, when all apps are disabled. (apart form the prometheus app, ive monitored that one via the homey logic). all my flows have logging via the papertrails in them, there is also nothing there every 50mins.

im really clueless what causes those spikes, so im hoping someone can point me in a right direction for troubleshooting this further on.

Some info of my Homey:

Homey Pro Early 2019 FW 7.2.0 
129 devices (50 zwave, 0 443mh/z, 0 zigbee (using deconz), 6 BLE, 1 IR) 
329 Flows 
31 Apps (all latest versions): 
homey:app:io.prometheus
homey:app:com.community.store
homey:app:com.athom.flowchecker
homey:app:com.svipler.athom.sonos-say
homey:app:com.uc.heimdall
homey:app:com.eufylife.security
homey:app:com.gruijter.powerhour
homey:app:com.irobot.roomba980
homey:app:nu.dijker.papertrails
homey:app:com.qubino
homey:app:com.sonos
homey:app:com.aeotec
homey:app:nl.bevlogenheid.countdown
homey:app:com.neo
homey:app:com.gruijter.callmebot
homey:app:com.internet
homey:app:com.tado
homey:app:com.mi.flora
homey:app:de.dresden-elektronik.deconz
homey:app:nl.terryhendrix.smartpresence
homey:app:nuki.homey
homey:app:com.gruijter.enelogic
homey:app:nl.xseth.dashboardctrl
homey:app:hk.com.remotec
homey:app:com.athom.awair
homey:app:net.weejewel.hyperion
homey:app:com.athom.soundboard

Does anybody else recognize those spikes or has an great idea how i can troubleshoot further?
Thanks in advance!

Garbage collection?

Seems quite “normal”? (My Homey runs fine btw)
Homey Early 2019 512MB

Thnx wil look into this, have you used it to examine this before?

My homey also runs pretty well, but it cant be good right?
good to know you have these spikes too.

It is not something you can use, it is something I know periodically happens and causes temporary system load. Homey runs on node.js which has a garbage collector: that is a process that cleans up reserved memory that is no longer in use so it can be used again.

Homey displays system load by the amount of commands waiting for execution. So if the Homey processors are busy collecting garbage they will process less commands, which may show an increase in commands waiting. Garbage collection runs in the background, so commands will get executed (albeit a little slower).

Periodical garbage collection is normal system behavior and as long as the system runs normally I would not worry about it.

Node.js doesn’t perform garbage collection every 50 minutes, it collects garbage pretty much all the time. Either Athom is deliberately calling the garbage collector at that interval, or there are system processes (remember, Homey runs Linux) that are causing the load spikes.

Thanks for the explanation. i can see the garbage collection happening (i think, looking at the red line (system mem)) but its not aligned with the spikes.

I’d expect “Homey” to be the main Homey node.js process (which isn’t changing much) and “system” to be other system processes. It almost looks as if it’s restarting certain processes periodically.

There’s not much coincidence between the RAM usage and CPU usage graphs, which could also point to short-lived (but CPU-intensive) background processes that get fired up periodically.

But that said, it all depends on how these metrics are determined. Especially the “system” RAM can be tricky to get right (with things like system buffers, caches, swap, etc).