This page last changed on Aug 03, 2013 by acd.
I just installing OR on a Raspberry Pi and the server block on the info server startup in 54218 ms.
The web page of the OR is not available.
Any idea ?
1) Which JVM are you using?
2) Is the startup time without any sensor or rule deployments or do you have a design deployed already?
3) Do you have the 512MB version of RPi?
4) Which version of Controller are you using?
With the latest hard float JVM from Oracle on ARM (Java 8 early access) and no sensor or rules deployments the startup should be down to something around 30s. It is also possible the web console times out if there isn't a fast enough response. Or the reason could be something else altogether.
Posted by juha at Aug 03, 2013 19:21
Which URL did you use?
Interesting startup time.
I have a 512MB version, hard float, Java 8 and the following times are logged:
- Aug 03, 2013 10:06:14 PM org.apache.catalina.startup.Catalina load
- INFO: Initialization processed in 7972 ms
- INFO: Server startup in 96701 ms
--> 4 Zwave devices having 11 sensors (1 virtual sensor) with 2 rules. Would that take an extra 60 seconds?
Do you know whether there is a 'benchmark' config somewhere?
Posted by eivwer at Aug 03, 2013 21:15
1) Can you try for comparison the startup time with a vanilla install that has no design included? That should give a better idea what we are comparing against.
2) Reviewing some of the Z-Wave code earlier this week I spotted a potential issue there that might impact startup times – it looks similar to the ORCJAVA-294 issue for KNX discussed in this thread: Signed 8Bit integers for KNX 6.xxx. If the fix over there is verified, I can apply to Z-Wave as well if you volunteer to test it. The issue is that the current ZW initialization introduces network latency into startup times which seems not such a great idea given that networks can fail and lag in so many wonderful ways. So would seem prudent to separate network related operations out of the startup thread.
3) Rules should also add a little to startup time, but the network latency might have a larger impact (to be discovered)
Let me know if you'd be available to test patches.
Posted by juha at Aug 03, 2013 23:46
BTW, the z-wave discussion above was related to using Aeon Labs Z-stick, not Razberry.
Posted by juha at Aug 04, 2013 08:51
1) Vanilla startup is faster indeed
INFO: Initialization processed in 9717 ms
INFO: Server startup in 53532 ms
2) Sure, let me know and I'll run it.
3) Maybe this helps a bit?
--> 4 Zwave devices having 12 sensors (2 virtual) with 4 rules: INFO: Server startup in 115503 ms
--> 4 Zwave devices having 12 sensors (2 virtual) without rules: INFO: Server startup in 70992 ms
Note that starting up doesn't happen that often, so if that is a bit slower it's not an issue for me.
If the performance for normal operations is affected as well, it does seem interesting to pursue
Posted by eivwer at Aug 04, 2013 18:52
Thanks for the numbers.
1) I don't think it necessarily affects the normal operations. On the other hand, you never know. In some cases on the KNX side in a larger installation (100+ sensors) the startup time creeped to over 5 minutes. That's a bit too much at least when still in development mode trying things out which may require more restarts. Granted, once things are up and running in the ideal situation the restarts would be rare.
2) I can check the Z-Wave implementation to improve startup time (the fix is not difficult). But are you using Z-Wave with the Aeon Labs Z-stick, or Razberry?
3) Looks like quite some time still spent on compiling rules. It does make sense in that the rule files do need to be compiled so running on a lower end system like RPi that does seem to have noticeable impact. There's a way to pre-compile the rules which would speed things up at startup. Not something that we'll address immediately but good to keep in mind when going through that part of the code next time.
Posted by juha at Aug 05, 2013 10:26