You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
All loop-bounds lookups in the LFRic PSy layer are done before the loops themselves. This removes type-bound procedure calls from those loops which will facilitate acceleration with e.g. OpenACC.
The kernel-stub generator (gen_kernel_stub) functionality has moved and is now available as part of the new psyclone-kern command.
Work towards supporting mixed precision in the LFRic API. Precision for kernel arguments is now obtained by interrogating the Algorithm layer.
All LFRic built-ins (barring those that do reductions and type casting) are now constructed using PSyIR.
NEMO:
Improvements to the PSyIR to better support object-orientated style Fortran.
Various bug fixes related to the construction and use of PSyIR for NEMO, MEDUSA and NEMOVAR, particularly for structures of arrays.
New ACCRoutineTrans and OMPTargetTrans transformations to allow routines to be flagged for compilation for a remote device.
New HoistLocalArraysTrans transformation which transforms local, automatic arrays into module scope allocatables.
GOcean:
An example of the use of the PSyData API for checking for NANs before and after kernels has been added.
OpenCL functionality has been moved out of code generation and into code transformations in order to improve code structure.
Kernel data extraction can now create a stand-alone driver to read in the data, execute the kernel and verify the results.
PSyclone Adjoint generator (PSyAD):
Various improvements including support for dot_product and matmul intrinsics.
General:
Loop blocking and tiling transformations have been added.
Support for Python 2 has been removed. Testing is now performed for Python 3.6, 3.8 and 3.10.0.
Dependence analysis now utilises SymPy.
Parallel-loop transformations now check for loop-carried dependencies.
Dynamo 0.1 and GOcean 0.1 APIs have been removed.
Improved representation of directive clauses in the PSyIR.
GitHub Actions now performs link checking for all Sphinx documentation as well as running the doctests in the Developer Guide.