Essential topics related to performance.
With modern mobile CPU having more than one core, putting heavy duty code in parallel callbacks will allow them to be executed at the same time by multiple CPU cores, greatly improving performance.
For example, reduce code
updateSequential in callbacks to only that needs to write to global blocks (such as Level Memory), and rest of the code (such as rendering) should be done in
updateParallel callback for best performance.
Sonolus has a sizable overhead when executing a node, even for a value note. It is recommended to reduce node count to improve performance, by more efficient code or leveraging optimization system.
For example (ignoring optimization system),
Get(1, Add(2, Multiply(3, 4))) executes 7 nodes, while
GetShifted(1, 2, 3, 4) executes only 5 nodes and thus is preferred.