Hi all,
I wish to improve my system to aid responsiveness and tidiness of logic for events.
I have UI5 and run multiple timers, scenes, events, ping sensors, push notifications, LUA etc.
I have recently tuned the z-wave network as best I can to secure best results in terms of reactiveness etc.
I am looking to move from timers and LUA script to a single PLEG instance in order to reduce Memory and CPU load (more memory saving) and also to hopefully improve process. The goal is to further speed up responsiveness of my system and help eradicate for good the occasions when things become erratically irresponsive ? such as a light not coming on when it is supposed to if tripped by a sensor for example. I believe this may be a result of the system being busy at the time hence why such situations arise on odd occasions.
So what I would like to do is monitor Memory load on the system now, and for an extended period of time, to see if my theory is then correct and if there is indeed periods where load is above what would be considered optimal for performance.
I then wish to remove all timers, scenes and LUA, and replace with a single PLEG instance and run the same diagnostic to see if I have noticeable improvements / results.
I have installed system monitor but it does not seem to provide real time reporting? A graph that monitors memory usage would be great ? like task manage in windows 7, that would allow for me to see whether I am consistently running high or low memory usage or when and why it has peeked (maxed out) if and when it does. I do not believe I can do this with Data mine? Or can i?
Has anyone done a similar test and if so any advice?
Has anyone transition from LUA to PLEG as I intend and seen improved results?
-LightsOn
LUA will have better performance than PLEG.
(Pleg is written in LUA … and is an extra layer of code!)
It will save memory if the total number of plugins is reduced as a result of this effort.
PLEG is probably close to the performance and memory utilization of a Scene.
(i.e. 10 Scenes with commands is about the same memory as 10 conditions and associated actions). Except PLEG has memory overhead of the containing PLEG plugin.
Hi Thank you for responding.
This makes sense - so then I may not be better to transition unless I can reduce the number of plugins as a result, and the main plugins that would be reduced would be timers, as virtual switches and others would still be needed. I need then, to think if the reduction of say 10>15 timers will make that much difference to overall performance / responsiveness?
So with this in mind how best do I finalise my troubleshooting for occasional delays? Is looking into memory load currently still a good idea? I certainly would be interested in understanding a little more about how to monitor what is happening under the hood.
As you start to run out of memory … Vera can behave badly. Accessing network resources that are offline and/or have connectivity issues can also have a negative impact on your system. When you start to have problems … you need start to monitor/understand what is happening.
But than their’s the Heisenberg uncertainty principal … and in the case of Vera … adding monitoring tools can put Vera into a worse scenario. The built-in linux tools will help … but they are difficult for newbies to understand.
That’s why you want to have EXCESS resources … so you do not have to worry about resource constraints. Hopefully the Vera 4 will be out soon!
Hi,
yes I agree - having a system with excess resources or an ability to upgrade such resources (e.g ram) would be a great benefit. I have not read up on Release 4 bu8t assume it address this issue.
I understand that adding monitoring tools can have an adverse affect on the issues in play (the Heisenberg uncertainty principal) [had to Google that one!] but it is a starting point and the only way I suppose.
I am familiar with some Linux and have played with it on some different levels so I would hope to have a basic knowledge that could give me a platform to learn from. This I feel is where I need to start as currently I am “assuming” this is the root of my issues but I am unable to confirm it. My only rout it seems is to deal with understanding what is happening under the hood with ram and CPU, perhaps via the built in Linux as you state, so I can review if in fact I am correct in thinking that it is indeed a system restraint and if so how best to go about making improvements.
I shall have a look round the forum for the build in Linux methods you describe but I have only really to date seen system Montour and data mine that come close and these are apps not Linux command line stuff. I am happy using WinSCP to dial into the Vera so any commands or posts I can read that may help me would be greatly appreciated.
For the record my system monitor currently states:
Mem Available 86812 kilo bytes
CPU Load (1 minute) 0.23
CPU Load (5 minute) 0.26
CPU Load (15 minute) 0.24
Last CMH Reboot 17:04:11 Sun 10 Nov 2013
Last Vera Restart 12:15:21 Thu 21 Nov 2013
Last Luup Restart 03:30:32 Thu 21 Nov 2013
so circa 85 megabytes free - but is this good or bad given the system environment?
upon reading this link:
http://forum.micasaverde.com/index.php?topic=17443.0
I think I am okay for now? thoughts?
As such this would indicate that perhaps pursuing CPU and Memory as issues may not be the case for me. I do however have 97 items under devices (mixture of actual z-wave units, virtual switches, timers etc.) and 140 scenes… is this the issue?
perhaps time to start reading the logs to see if I can see errors but with all the devices and scenes there is a lot going on in the logs and I never really know where to start debugging as I may not be looking for an issue as one may not be there?
humpfff… need to think some more perhaps…