New Release v0.9.1
Implement heuristics to increase performance by combining logical & arithmetic operators
This release introduces a significant performance improvement. Our engineers @chris.holgate and @vmchale have implemented heuristics for combining operators. Our compiler now searches your programs for operators, such as logical operators or arithmetic operators, and collapses them into a single combined operator. The practical effect is that when the output of an operation feeds into the input of another operation, the resulting generated program can do those together, resulting in faster programs with less area usage.
So, for example, if we had chained operations on booleans our compiler would collapse those operations into a single logical block, allowing them to all happen in a single clock cycle.
The biggest performance gains will be seen in computation heavy code, e.g. loops containing arithmetical operations, rather than high latency areas, such as accessing shared memory.