CGH0S7
c974a88d6d
Pool fh work arrays in compute_rhs_bssn to eliminate allocation churn
...
Add _fh variants of fderivs, fdderivs, kodis, and lopsided that accept
a caller-provided fh work array instead of allocating one internally.
Declare two shared work arrays in compute_rhs_bssn (fh_work2 for
symmetry_bd(2) callers, fh_work3 for symmetry_bd(3) callers) and pass
them to all ~84 subroutine calls, eliminating ~77 redundant automatic
array allocations (~591 MB churn per RHS call, ~2.3 GB per timestep).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-07 21:49:12 +08:00
..
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-02-07 21:49:12 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-02-07 21:49:12 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-02-06 17:13:39 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-16 10:58:11 +08:00
2026-01-13 15:01:15 +08:00
2026-02-06 19:00:35 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-16 10:58:11 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-16 10:58:11 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-02-07 21:49:12 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-02-07 21:49:12 +08:00
2026-01-13 15:01:15 +08:00
2026-01-15 16:32:12 +08:00
2026-01-13 15:01:15 +08:00
2026-02-06 17:13:39 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-02-06 21:20:35 +08:00
2026-02-06 21:20:35 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00
2026-01-13 15:01:15 +08:00