Michael Lange

Results 12 issues of Michael Lange

The main point of this PR is a re-base-and-replay of PR #201 by @rolfhm . It primarily rebases the main implementation of the `TemporariesSCCRawStackTransformation` over recent `main` and squashes the...

As we are maturing the outward-facing components of Loki, we have been contemplating a slight repository reorganisation to better encapsulate the different layers of the API and organise the re-use...

enhancement
question

With the new Scheduler (PR #213) approaching completion, one of the remaining issues flagged was the performance of building and re-building large SGraph objects, eg. for EC-physics. As a result...

enhancement

The OFP frontend is getting increasingly hard to maintain. A recent brush with some of its inconsistencies (mostly due to skew in the generated AST node scoping due to upstream...

enhancement

Conceptually, our use of the class `Subroutine` is broken, as it merely differentiates between `Function` and `Subroutine` by a single flag attribute. The correct representation would be to have an...

enhancement

The `Scheduler` constructor call `_infer_allocatable_shapes` (https://github.com/ecmwf-ifs/loki/blob/main/loki/subroutine.py#L131) routinely for every object. This is a remnant of the early days of Loki development and should be moved into the shape-handling transformation utility.

enhancement

_Note: These points arose during the PR review of #150 - please see the PR for more detail._ In the SCC family of single column transformations, we have many mechanisms...

enhancement

~_Note: Just testing for now..._~ This PR changes the way we add OpenACC annotations in the SCC pipelines and generally refactors `SCCAnnotate` and `SCCRevector`. The key change is that we...

This change creates two new separate transformation sub-packages `loki.transformations.inline` and `loki.transformations.extract` that are conceptual complements. For the inline sub-package, this allows us to separate the different types of inlining (constants,...

_Note: This PR sits on top of PR #372 and requires this to be merged first._ This PR re-writes the `ResolveAssociateTransformer` and switches it to acting entirely in-place. For this,...