PSyclone icon indicating copy to clipboard operation
PSyclone copied to clipboard

Domain-specific compiler and code transformation system for Finite Difference/Volume/Element Earth-system models in Fortran

Results 278 PSyclone issues
Sort by recently updated
recently updated
newest added

Broken out of #1782 to simplify things. Adds an `-api` flag to the `psyad` command-line and uses this to specialise the adjoint generation.

in progress
adjoint

In some cases (e.g. NEMO sbcblk.f90), range expressions like: `zrhoa(:,:) = rho_air( sf(jp_tair)%fnow(:,:,1), sf(jp_humi)%fnow(:,:,1), sf(jp_slp)%fnow(:,:,1) )` are converted to explicit loops like: `zrhoa(idx_15,idx_14) = rho_air(sf(jp_tair)%fnow(:,:,1),sf(jp_humi)%fnow(:,:,1),sf(jp_slp)%fnow(idx_15,idx_14,1))` this should not happend because...

bug
NEMO

Currently we allow most Fortran intrinsics to be offloaded to GPUs with OpenMP and OpenACC directive, but not all of them are supported in GPUs. However, the standards are not...

e.g. if we have some code that does: USE x, ONLY : y => z then Simon has reported that we raise an exception when processing the subsequent code because...

NEMO
PSyIR

Adds support for explicit array range declarations to the dotproducttrans transformation. Required for PSyAD with PR #1825.

ready for review
adjoint

As of #1151, OpenMP directives have additional "Clause" children.. At the moment, the specifier in `_children_valid_format` requires an ordering of these clauses as children, as something like `[OMPPrivateClause, OMPDefaultClause]*` doesn't...

enhancement

@mnobre has suggested that we should rename the NEMO API. @hiker is in favour and suggested "EVOLUTION". We could go with "EVO" (as in Mitsubishi Evo which is fast :-))...

question

The dotproduct transformation only works if the inner dimension of the argument is a ':'. This is too restrictive as it could have bounds as long as they are the...

adjoint

Some tutorials appear to be outdated. In at least one case the solution file was fixed, but not the file the user is supposed to modify. Example: ``` psyclone/tutorial/practicals/LFRic/building_code/3_time_evolution$ diff...

LFRic
tutorial