Open LonelyCat124 opened 2 years ago
This is going to attempt to use PsyData instead of separate transformations now we have full task support.
After discussing today, this is not going to use PSyData, but instead belong to the OMPTaskDirective/OMPTaskTransformation as an option. This will probably also have to belong to Single/Serial regions as well (and taskwait).
We'll add an option to the transformation, and a property + setter to the task directive and equivalent.
At lowering time, then we add new calls/imports/symbols as appropriate for the otter code.
As part of the ExCALIBUR project, we will need Otter (https://github.com/Otter-Taskification/otter) transformations to support Otter's (future) simulator, etc. I expect these transformations to somewhat closely mirror OpenMP's requirements/implementations, as this is the supported parallel system in PSyclone. The task-based transformations will (for now) probably be similar to
taskloop
, but it will manually decompose the loop using other transformations (chunked loop trans I think I named it in the end).I'm going to work on this probably this week as we need to demo this early next month - I don't expect it to be masses of code for a prototype we can use for the demo at least.