Skip to content

Commit

Permalink
Merge branch 'master' into 257_verify_loop_fusion
Browse files Browse the repository at this point in the history
  • Loading branch information
arporter committed Oct 18, 2024
2 parents 69eaa3f + 3c331e1 commit d8ef21f
Show file tree
Hide file tree
Showing 12 changed files with 30 additions and 24 deletions.
8 changes: 4 additions & 4 deletions .github/workflows/compilation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,14 +51,14 @@ on:
push

env:
CUDA_VERSION: 12.6.0
CUDA_VERSION: 12.6.2
GFORTRAN_VERSION: 14.2.0
HDF5_VERSION: 1.14.4.3
HDF5_VERSION: 1.14.5
NETCDF_C_VERSION: 4.9.2
NETCDF_FORTRAN_VERSION: 4.6.1
NVFORTRAN_VERSION: 24.7
NVFORTRAN_VERSION: 24.9
OPENMPI_VERSION: 5.0.5
PYTHON_VERSION: 3.12.5
PYTHON_VERSION: 3.13.0

jobs:
run_if_on_mirror:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/lfric_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ jobs:
runs-on: self-hosted
env:
LFRIC_APPS_REV: 3269
PYTHON_VERSION: 3.12.5
PYTHON_VERSION: 3.13.0

steps:
- uses: actions/checkout@v3
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/nemo_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,13 +46,13 @@ jobs:
if: ${{ github.repository == 'stfc/PSyclone-mirror' }}
runs-on: self-hosted
env:
HDF5_VERSION: 1.14.4.3
HDF5_VERSION: 1.14.5
NETCDF_C_VERSION: 4.9.2
NETCDF_FORTRAN_VERSION: 4.6.1
NVFORTRAN_VERSION: 23.7
ONEAPI_VERSION: 2024.2.1
PERL_VERSION: 5.40.0
PYTHON_VERSION: 3.12.5
PYTHON_VERSION: 3.13.0

steps:
- uses: actions/checkout@v3
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/python-package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.12'
python-version: '3.13'
- run: sudo apt-get install -y graphviz doxygen
- run: python -m pip install --upgrade pip
- run: pip install .[doc]
Expand All @@ -83,7 +83,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.12'
python-version: '3.13'
- run: python -m pip install --upgrade pip
- run: pip install .[doc]
# Sphinx since version 7.2 (7.2.0/1/2) aborts with
Expand All @@ -99,7 +99,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.7, 3.8, 3.12]
python-version: [3.7, 3.8, 3.13]
steps:
- uses: actions/checkout@v4
with:
Expand Down
5 changes: 5 additions & 0 deletions changelog
Original file line number Diff line number Diff line change
Expand Up @@ -243,6 +243,11 @@
83) PR #2743 for #2742. Ensure generated code for function spaces in
LFRic is always in a consistent order.

84) PR #2746. Update minor versions of CUDA, HDF5, nvfortran and
Python used in the CI.

85) PR #2748. Revert Python used on RTD to 3.12 as 3.13 unsupported.

release 2.5.0 14th of February 2024

1) PR #2199 for #2189. Fix bugs with missing maps in enter data
Expand Down
4 changes: 2 additions & 2 deletions doc/developer_guide/working_practises.rst
Original file line number Diff line number Diff line change
Expand Up @@ -448,13 +448,13 @@ computational cost (so that we 'fail fast'):
3. All links within the Sphinx documentation (rst files) are checked (see
note below);

4. All of the examples are tested (for Python versions 3.7, 3.8 and 3.12)
4. All of the examples are tested (for Python versions 3.7, 3.8 and 3.13)
using the ``Makefile`` in the ``examples`` directory. No compilation is
performed; only the ``transform`` (performs the PSyclone transformations)
and ``notebook`` (runs the various Jupyter notebooks) targets are used.
The ``transform`` target is run 2-way parallel (``-j 2``).

5. The full test suite is run for Python versions 3.7, 3.8 and 3.12 but
5. The full test suite is run for Python versions 3.7, 3.8 and 3.13 but
without the compilation checks. ``pytest`` is passed the ``-n auto`` flag
so that it will run the tests in parallel on as many cores as are
available (currently 2 on GHA instances).
Expand Down
2 changes: 1 addition & 1 deletion doc/user_guide/getting_going.rst
Original file line number Diff line number Diff line change
Expand Up @@ -212,7 +212,7 @@ Dependencies
------------

PSyclone is written in Python so needs Python 3 to be installed on the
target machine. PSyclone is regularly tested with Python 3.7, 3.8 and 3.12
target machine. PSyclone is regularly tested with Python 3.7, 3.8 and 3.13
but should work with any version >= 3.6. (The last PSyclone release to
support Python 2.7 was version 2.1.0.)

Expand Down
4 changes: 2 additions & 2 deletions examples/gocean/eg5/extract/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -122,13 +122,13 @@ $(NAME): $(INF_LIB) $(EXTRACT_DIR)/$(LIB_NAME) $(KERNELS) alg.o psy.o
#TODO #1757: $(INF_LIB) is required because of the meta-data in the
# kernel - once this is fixed, $(INF_LIB) can be removed.
$(DRIVER_INIT).$(TYPE): $(KERNELS) $(DRIVER_INIT).o
$(F90) $(KERNELS) $(DRIVER_INIT).o -o $(DRIVER_INIT).$(TYPE) \
$(F90) $(F90FLAGS) $(KERNELS) $(DRIVER_INIT).o -o $(DRIVER_INIT).$(TYPE) \
$(INF_LIB) $(EXTRACT_DIR)/$(LIB_NAME) $(LDFLAGS)

#TODO #1757: $(INF_LIB) is required because of the meta-data in the
# kernel - once this is fixed, $(INF_LIB) can be removed.
$(DRIVER_UPDATE).$(TYPE): $(KERNELS) $(DRIVER_UPDATE).o
$(F90) $(KERNELS) $(DRIVER_UPDATE).o -o $(DRIVER_UPDATE).$(TYPE) \
$(F90) $(F90FLAGS) $(KERNELS) $(DRIVER_UPDATE).o -o $(DRIVER_UPDATE).$(TYPE) \
$(INF_LIB) $(EXTRACT_DIR)/$(LIB_NAME) $(LDFLAGS)

# The dl_esm_inf library
Expand Down
2 changes: 1 addition & 1 deletion examples/nemo/eg5/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ run: compile
IT=2 JPI=10 JPJ=10 JPK=5 ./traadv-$(TYPE).exe

traadv-$(TYPE).exe: psy.o $(EXTRACT_DIR)/$(LIB_NAME)
$(F90) psy.o -o traadv-$(TYPE).exe $(EXTRACT_DIR)/$(LIB_NAME) $(LDFLAGS)
$(F90) $(F90FLAGS) psy.o -o traadv-$(TYPE).exe $(EXTRACT_DIR)/$(LIB_NAME) $(LDFLAGS)

transform: kernels

Expand Down
Binary file modified psyclone.pdf
Binary file not shown.
15 changes: 8 additions & 7 deletions src/psyclone/tests/psyad/main_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -121,8 +121,9 @@ def test_main_h_option(capsys):
assert str(info.value) == "0"
output, error = capsys.readouterr()
assert error == ""
# The name of the executable is replaced with either pytest or -c
# when using pytest, therefore we split this test into sections.
# Python usage messages have seen slight tweaks over the years, e.g.,
# Python >= 3.13 tweaks the usage message to avoid repeating the args
# to an option between aliases, therefore we split this test into sections.
assert "usage: " in output
expected2 = (
"[-h] [-oad OAD] [-v] [-t] [-api API] [-coord-arg COORD_ARG] "
Expand All @@ -133,9 +134,12 @@ def test_main_h_option(capsys):
"positional arguments:\n"
" filename tangent-linear kernel source\n\n")
assert expected2 in output
assert (" -h, --help show this help message and exit\n"
in output)
assert (" -a ACTIVE [ACTIVE ...], --active ACTIVE [ACTIVE ...]\n"
in output or
" -a, --active ACTIVE [ACTIVE ...]\n" in output)
expected3 = (
" -h, --help show this help message and exit\n"
" -a ACTIVE [ACTIVE ...], --active ACTIVE [ACTIVE ...]\n"
" names of active variables\n"
" -v, --verbose increase the verbosity of the output\n"
" -t, --gen-test generate a standalone unit test for the "
Expand All @@ -156,9 +160,6 @@ def test_main_h_option(capsys):
" -otest TEST_FILENAME filename for the unit test (implies -t)\n"
" -oad OAD filename for the transformed code\n")
assert expected3 in output
assert ("-otest TEST_FILENAME filename for the unit test (implies -t)"
in output)
assert "-oad OAD filename for the transformed code" in output


# no args
Expand Down
2 changes: 1 addition & 1 deletion tutorial/practicals/nemo/2_nemo_profiling/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ transform:
-o output_3.f90 -l output tra_adv_mod.F90

compile: transform $(KERNELS) output.o solutions/runner.o
$(F90) $(KERNELS) output.o solutions/runner.o -o $(NAME) \
$(F90) $(F90FLAGS) $(KERNELS) output.o solutions/runner.o -o $(NAME) \
$(PROFILE_WRAPPER_LINK) $(PROFILE_LINK)

# Only used for the compile CI target to compile the solution file
Expand Down

0 comments on commit d8ef21f

Please sign in to comment.