Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
6923525
Updating to oneAPI + re-organised the yaml file (draft)
manodeep Mar 24, 2025
2a9bb04
Request gcc-runtime and glibc with %gcc
manodeep Mar 24, 2025
083ad75
Added the compiler flags to target the SPR arch (but produce exes tha…
manodeep Mar 25, 2025
86a0187
Hmm cice4 does not like march=sapphirerapids - swapping to cascadelake
manodeep Mar 25, 2025
57e2386
Add flto to UM
manodeep Mar 25, 2025
869ae24
Add mtune=sapphirerapids and remove CORE-AVX2 and cascadelake
manodeep Mar 25, 2025
8d416f2
added qopt-zmm-usage=high
manodeep Mar 25, 2025
b0b745b
Add opt-prefetch=3
manodeep Mar 25, 2025
cb43b46
Add fma
manodeep Mar 25, 2025
ae1c3c9
Removed fma (to rebuild the failed deployment)
manodeep Mar 26, 2025
b5f9f7a
Changing to fp-model fast but with high precision (and adding protect…
manodeep Mar 28, 2025
5ae1455
Added nan-compares and ieee-compares flags
manodeep Mar 31, 2025
63189b9
Remove the nan+ieee compares options from cice4 (otherwise the deploy…
manodeep Mar 31, 2025
72889d2
Silly me - those flags only apply to fortran
manodeep Mar 31, 2025
53f3fac
Remove compiler options that don't seem to speedup runtime
manodeep Apr 7, 2025
62eb39a
Added some more flags to better track div-by-zero
manodeep Apr 7, 2025
4f3ed08
Build with my mom5 patch to avoid div-by-zero
manodeep Apr 7, 2025
baa0707
Go back to the version I was using for performance testing and update…
manodeep Apr 9, 2025
4fcda11
Remove nan initialisers, add unroll and zmm-usage
manodeep Apr 12, 2025
26d4cd8
Always vectorize (regardless of profitability)
manodeep Apr 12, 2025
dd14cc1
Remove check all and fpe0. Aligned the code options to make it easier…
manodeep May 1, 2025
3812f3d
Added recommended flags for profiling
manodeep May 1, 2025
88a4a82
Hmm may be sibling calls optimisation is the issue
manodeep May 1, 2025
7b7571e
g3 might be helpful for the stack traces
manodeep May 6, 2025
138a487
valgrind has a SIGILL. Drop down to AVX2 (instead of sapphirerapids, …
manodeep May 7, 2025
5db0f29
Helps to put a '-' in front of flags
manodeep May 7, 2025
dc85776
Change the global arch to x86-64-v3, i.e., AVX2
manodeep May 7, 2025
8955165
Added flags to all compiled dependencies
manodeep May 7, 2025
429392c
Added the nan + huge init back
manodeep May 8, 2025
781c4c3
Added the -heap-arrays compiler flag
manodeep May 8, 2025
a7a0ddd
Remove the initialisers and add the nominus0 (but may nominus0 is the…
manodeep May 13, 2025
8824a70
Update the UM commit hash to fix build failure
manodeep May 13, 2025
6bff325
Revert to exe (pr67-2) with div-by-zero + xcore-avx2 for valgrind
manodeep May 14, 2025
b3b3951
Still crashed with cpuid-type error. Adding xcore-avx2 to everything
manodeep May 14, 2025
825a052
Keep getting wombatlite errors. Updated packages to the ones within t…
manodeep May 15, 2025
72f0e76
Segfaults again (but no wombatlite errors) within valgrind. Going bac…
manodeep May 15, 2025
425c66d
Add -O0 to UM and remove memory checking from everything
manodeep May 28, 2025
488e4db
Changed UM to undo phenology changes but with oneapi compile failure …
manodeep May 29, 2025
4f3f48f
Explicitly initialising arrays to 0 in mom5
manodeep May 29, 2025
dd65dfa
Remove -O0 to build with the previous commit
manodeep May 29, 2025
4918359
Build with the file-local nooptimise directive
manodeep May 29, 2025
8618e3c
Checking whether dummy aliases flag fixes
manodeep May 30, 2025
01b39d1
Remove dummy_aliases; compile with the print statement within the off…
manodeep May 30, 2025
b8a18c8
over-riding the default -O3 with -O2
manodeep May 30, 2025
7938736
Trying to re-use the previous builds with hashes
manodeep May 30, 2025
04962a5
Change to -O1 for mom5
manodeep May 30, 2025
5159ba8
Revert back to the regular flags
manodeep May 30, 2025
785fb77
Make sure there is one source for cice4
manodeep May 31, 2025
5e50f56
Building with the new mom5 that prevents vectorisation in the two off…
manodeep Jun 2, 2025
b41f693
Building with the updated code that protect the divides by adding int…
manodeep Jun 2, 2025
f387236
Update versions of spack-packages, access-fms and access-generic-tracers
dougiesquire Jun 3, 2025
a9dc871
Check whether the troubles go away with the newer version
manodeep Jun 3, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion config/versions.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"$schema": "https://github.com/ACCESS-NRI/schema/blob/main/au.org.access-nri/model/deployment/config/versions/3-0-0.json",
"spack": "0.22",
"spack-packages": "2025.03.002"
"spack-packages": "2025.05.002"
}
103 changes: 83 additions & 20 deletions spack.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,54 +9,117 @@
# - CICE4 from ESM1.5 and change to CICE5 once CICE5 SPR has been updated.
spack:
specs:
- access-esm1p6@git.dev_2025.03.3
- access-esm1p6@latest
packages:
mom5:
require:
- '@git.dev-2025.03.001=access-esm1.6'
- '+access-gtracers'
- '@git.ad1e41e2f7687a09e82addf5edbcca18fdd43ed5=access-esm1.6'
- 'fflags="-g3 -xCORE-AVX2 -fprotect-parens -assume nan_compares -assume ieee_compares -traceback"'
- 'cflags="-g3 -xCORE-AVX2 -fprotect-parens"'
- 'cxxflags="-g3 -xCORE-AVX2 -fprotect-parens"'
cice4:
require:
- '@git.b51e3529bd78fd852760e348983e2334341f861d=access-esm1.5'
# '/qljzx7x'
# - '@git.b51e3529bd78fd852760e348983e2334341f861d=access-esm1.5'
- '@git.access-esm1.6-2025.04.000=access-esm1.5'
- 'fflags="-g3 -xCORE-AVX2 -fprotect-parens -assume nan_compares -assume ieee_compares -traceback"'
- 'cflags="-g3 -xCORE-AVX2 -fprotect-parens"'
- 'cxxflags="-g3 -xCORE-AVX2 -fprotect-parens"'
um7:
require:
- '@git.86a4e1fc37cb1d6fc1dae536deb5c0bd104506bf=access-esm1.6'
# '/rjo4gre'
- '@git.1ea43190add8627fb317906d257f278763b55125=access-esm1.6'
- 'fflags="-g3 -xCORE-AVX2 -fprotect-parens -assume nan_compares -assume ieee_compares -traceback"'
- 'cflags="-g3 -xCORE-AVX2 -fprotect-parens"'
- 'cxxflags="-g3 -xCORE-AVX2 -fprotect-parens"'

# Intermediate-level dependencies
gcom4:
require:
- '@git.2024.05.28=access-esm1.5'
# '/4ahbikn'
- '@git.0f17657a3b21cda9c0f3c403d99667e436062e38=access-esm1.5'
- 'fflags="-g3 -xCORE-AVX2 -fprotect-parens -assume nan_compares -assume ieee_compares -traceback"'
- 'cflags="-g3 -xCORE-AVX2 -fprotect-parens"'
- 'cxxflags="-g3 -xCORE-AVX2 -fprotect-parens"'
oasis3-mct:
require:
- '@git.access-esm1.5-2025.03.001=access-esm1.5'
# '/6quqwyb'
- '@git.7036f26ece68c26083fec2fe96e3cb1faed7559d=access-esm1.5'
- 'fflags="-g3 -xCORE-AVX2 -fprotect-parens -assume nan_compares -assume ieee_compares -traceback"'
- 'cflags="-g3 -xCORE-AVX2 -fprotect-parens"'
- 'cxxflags="-g3 -xCORE-AVX2 -fprotect-parens"'
access-fms:
require:
# '/finlfac'
- '@git.mom5-2025.05.000'
- 'fflags="-g3 -xCORE-AVX2 -fprotect-parens -assume nan_compares -assume ieee_compares -traceback"'
- 'cflags="-g3 -xCORE-AVX2 -fprotect-parens"'
- 'cxxflags="-g3 -xCORE-AVX2 -fprotect-parens"'
access-generic-tracers:
require:
# '/z2t66eo'
- '@git.dev-2025.05.001'
- 'fflags="-g3 -xCORE-AVX2 -fprotect-parens -assume nan_compares -assume ieee_compares -traceback"'
- 'cflags="-g3 -xCORE-AVX2 -fprotect-parens"'
- 'cxxflags="-g3 -xCORE-AVX2 -fprotect-parens"'

access-mocsy:
require:
# '/meqj55h'
- '@git.2017.12.0'
- 'fflags="-g3 -xCORE-AVX2 -fprotect-parens -assume nan_compares -assume ieee_compares -traceback"'
- 'cflags="-g3 -xCORE-AVX2 -fprotect-parens"'
- 'cxxflags="-g3 -xCORE-AVX2 -fprotect-parens"'

# System-level packages
openmpi:
require:
# '/xid2pum'
- '@4.1.5'
- 'fflags="-g3 -xCORE-AVX2 -fprotect-parens -assume nan_compares -assume ieee_compares -traceback"'
- 'cflags="-g3 -xCORE-AVX2 -fprotect-parens"'
- 'cxxflags="-g3 -xCORE-AVX2 -fprotect-parens"'

netcdf-c:
require:
# '/dpqjhl3'
- '@4.7.4'
- 'fflags="-g3 -xCORE-AVX2 -fprotect-parens -assume nan_compares -assume ieee_compares -traceback"'
- 'cflags="-g3 -xCORE-AVX2 -fprotect-parens"'
- 'cxxflags="-g3 -xCORE-AVX2 -fprotect-parens"'

netcdf-fortran:
require:
# '/vqb6dyd'
- '@4.5.2'
- 'fflags="-g3 -xCORE-AVX2 -fprotect-parens -assume nan_compares -assume ieee_compares -traceback"'
- 'cflags="-g3 -xCORE-AVX2 -fprotect-parens"'
- 'cxxflags="-g3 -xCORE-AVX2 -fprotect-parens"'

hdf5:
require:
# '/v7qxufc'
- '@1.10.11'
access-fms:
require:
- '@git.mom5-dev-2025.02.3'
access-generic-tracers:
- 'fflags="-g3 -xCORE-AVX2 -fprotect-parens -assume nan_compares -assume ieee_compares -traceback"'
- 'cflags="-g3 -xCORE-AVX2 -fprotect-parens"'
- 'cxxflags="-g3 -xCORE-AVX2 -fprotect-parens"'

gcc-runtime:
require:
- '@git.dev-2025.02.1'
access-mocsy:
- '%gcc'

glibc:
require:
- '@git.2017.12.0'
- '%gcc'

# Preferences for all packages
all:
require:
- '%intel@19.0.3.199'
- 'target=x86_64_v4'
- '%oneapi@2025.1.1'
- 'target=x86_64_v3'
view: true
concretizer:
unify: true
unify: false
modules:
default:
tcl:
Expand All @@ -66,9 +129,9 @@ spack:
- um7
- mom5
projections:
access-esm1p6: '{name}/dev_2025.03.3'
cice4: '{name}/b51e3529bd78fd852760e348983e2334341f861d-{hash:7}'
um7: '{name}/86a4e1fc37cb1d6fc1dae536deb5c0bd104506bf-{hash:7}'
access-esm1p6: '{name}/latest'
cice4: '{name}/access-esm1.6-2025.04.000-{hash:7}'
um7: '{name}/ad219516fcbb5386739e3e07ab7fef6a54634034-{hash:7}'
mom5: '{name}/dev-2025.03.001-{hash:7}'
config:
install_tree:
Expand Down