Open kynan opened 13 years ago
In the present configuration, the UFL IR is partitioned into "atoms" - maximal subexpressions that depend on a single set of indices, that are delineated in the UFL IR by SubExpr nodes. I think this achieves what we intended to do with the "DAG Generator" and "DAG Partitioner" without coming up with a whole new IR, but instead just augmenting the already-existing set of expression nodes that UFL provides.
Since we're moving towards generating local assembly kernels that compute a single matrix entry, the partitioning is far less important for register pressure. Therefore, I think this issue should be closed - any thoughts please?
For the time being I agree we should put it on hold until (if ever) it becomes relevant.
The pipeline design contains two stages IR DAG Generator and IR DAG Partitioner which are not yet implemented. The canonicalised UFL objects are currently passed to the Backend AST Generator straight away.