ccpp_prebuild.py: add capability to use chunks of contiguous arrays in the run phase #520
Labels
capgen-unification
Issues/PRs necessary for capgen/prebuild unification
ccpp_prebuild
bugs, requests, etc. that involve ccpp_prebuild
enhancement
Description
As part of the "master plan" to transition all users of CCPP to the next-generation framework
capgen
, we want to add the capability toccpp_prebuild
to use contiguous arrays in theinit
,timestep_init
,timestep_finalize
, andfinalize
phases, while sending chunks of these arrays to the physics in therun
phase for parallel processing (via OpenMP etc.).We have good reasons to believe that this is faster than using blocked data structures as it is currently the case for the UFS Weather Model (and the SCM, although it doesn't matter here since it only uses one block).
If we can demonstrate that contiguous arrays are faster and easier to implement and manage, then we can transition the UFS Weather Model and other models to those arrays, remove support for blocked data structures, and remove the need to add support for blocked data structures to
capgen
.Solution
Add capability to
ccpp_prebuild
to use contiguous arrays / chunks of contiguous arrays, similar to how it is done incapgen
.Alternatives (optional)
Add support for blocked data structures to
capgen
.Related to (optional)
n/a
The text was updated successfully, but these errors were encountered: