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
- Compact kernel parameters: adapt every DataLayout view to a
CompactDeviceView at kernel launch, storing an Int32 offset per
restricted dimension instead of a SubArray (72-88 vs 128-160 bytes per
broadcast argument), so that large EDMF broadcasts fit the 4 KiB
parameter limit of sm_60 GPUs; full arrays pass through unchanged.
- QuasiMonotoneLimiter: apply the limit through one scalar view per
component of ρq, indexing DataLayouts instead of reshaping slab parent
arrays, since Base.reshape of a device-array SubArray is uncompilable
in kernels under Julia 1.11.
- Fix the GPU MPI DSS exchange buffer index, which overlapped items
whenever Nv > 1 and Nf > 1, corrupting every distributed GPU
weighted_dss! of extruded multi-component fields.
- Restore two behaviors from main that downstream code relies on:
zero-size fields are hidden from DataLayout propertynames (restart
comparisons recurse into Tensor bases otherwise), and array2field
derives its parent shape from any layout (PointSpace included).
- Support the old universal CartesianIndex{5} indexing convention on
layouts, slabs, and columns, which registered downstream packages like
ClimaCoreTempestRemap still use.
- Dev-install lib/ClimaCoreMakie in the performance pipeline, since the
registered version still destructures the old 5-tuple layout size.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
0 commit comments