Skip to content

[PSyIR] translate the algorithm layer to PSyIR #753

Description

@rupertford

The algorithm layer is currently parsed and transformed with fparser2. We should use the PSyIR instead for flexibility and to support potential future optimisations. The idea would be to parse to low level PSyIR then to recognise invoke regions, Kernels and arguments with particular types (fields, scalars, ...) and have domain-specific nodes for these. In the first instance we would need to be able to re-create the existing algorithm transformation performed by fparser2.

Once the above is working then additional functionality to try to determine the datatypes, function spaces etc. of algorithm arguments (within invokes) that passed into the PSy-layer. This could then be used to perform static correctness checks between algorithm fields and kernel arguments (specified with metadata).

This would complement issue #79.

Metadata

Metadata

Assignees

Labels

GOceanIssue relates to the GOcean domain

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions