[Ovmsdev] Task stack optimization
Michael Balzer
dexter at expeedo.de
Thu Apr 5 04:57:22 HKT 2018
I've done some stack size watching and pushed some optimizations:
- CanRxTask: 4K → 1K
- COrx Task: 4K → 3K [+config]
- COwrk Task: 4K → 1.5K [+config]
- Vrx Task: 4K → 3K [+config]
- Tmr Svc: 6K → 3K
Much better now, nearly no crashes during normal operation, so most crashes now have been memory related (I had normally 2-3 crashes during a normal drive). A
single crash I had when getting back home may have been due to my PC reconnecting to the webserver in parallel to my phone.
There are more stacks we possibly can reduce:
- SIMCOMTask normally maxes out at 2.3K (of 4)
- wifi ditto
- mdns normally uses 1.7K of 4 (no config for that one, defined in esp mdns_private.h)
These should normally have no larger stack requirements as their operation is pretty much fixed, so that would be another 4.5 - 5K to get.
As stacks need to be pinned to the internal RAM, hw3.1 also should benefit from these optimizations.
Regards,
Michael
--
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26
More information about the OvmsDev
mailing list