Timing issues caused by writing VCD file
Invoking the orchestrator script with the --debug option (included by default in the build-script.sh) enables the writing of a VCD file, in addition to compiling the glue code with the -g option.
When building an application for the SARGON project, we've experienced delays due to the writing of VCD file that made the application unresponsive. The fastest task in the application was reading from an IMU with a period of 8 ms. The writing rate of the VCD file reached several Mbit/s and the disk became a bottleneck, with task execution delays greater than 700 ms. The CPU utilization was low, under 10%, as was the network.
The cause of the application delays was difficult to find, as we were not aware of the nature of the VCD file. Once we found it, we removed the --debug option, but this made other issues more difficult to debug as there were no debug symbols for PolyORB-HI.
For this reason, we'd suggest to separate the options to compile with -g and to write the VCD file in two different orchestrator options. Furthermore, we suggest that the VCD file is disabled by default.
The creation of VCD files was introduced in commit 54e51fa2.