When models have a small amount of filter modules in them, it takes too long to load filter coefficients.
checkFiltReset()
is called at a 16Hz rate on each filter module.
When there are only two filter modules you get 32 calls to checkFiltReset(), however work is only partially complete each call to balance the incurred cycle latency. Only 1 filter stage is loaded each call, and once a filter module starts being reset/loaded checkFiltReset() with a different module ID actually continues work on the module already being reset/loaded.
2 filter modules means you have 2 * 16 -> 32 actions a second. At 1 action to load 1 stage, you have a minimum time of 10(stages)/32 ~.3125 seconds to load one filter module. If you had 10 filter modules 10 * 16 -> 160 actions a second. 10(stages)/160 = ~ 0.0625 seconds to load a filter module.
Notice: What times out is not the time it takes to load all filters, but the time it takes to load a single filter module.