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
Currently, the State_Diag arrays for HISTORY diagnostics with species dimensions (e.g. SpeciesConc, DryDep, WetLossConv, WetLossLS) are always allocated with the maximum possible number of slots (e.g. State_Chm%nSpecies, State_Chm%nDrydep, etc.). This can cause a large amount of memory to be allocated, especially if only a subset of species need to be archived.
@yantosca is currently working on an update that will only allocate as much memory as there are species requested in HISTORY.rc. For example, if you only request SpeciesConc_O3 and SpeciesConc_NO, then the State_Diag%SpeciesConc array will only be allocated with (NX, NY, NZ, 2) slots instead of (NX, NY, NZ, State_Chm%nSpecies) slots. This will result in a substantial savings of memory and also CPU cycles.
This work, which leverages the DiagList and TaggedDiagList data structures implemented by @christophkeller and @lizziel, should be ready for 12.9.0. More information will be forthcoming soon.
The text was updated successfully, but these errors were encountered:
This has now been completed. Initial testing of the budget diagnostics shows a ~60% decrease in the time needed to compute budget diagnostics for only 2 species vs. budget diagnostics for all species. Further time testing is needed.
Currently, the State_Diag arrays for HISTORY diagnostics with species dimensions (e.g. SpeciesConc, DryDep, WetLossConv, WetLossLS) are always allocated with the maximum possible number of slots (e.g. State_Chm%nSpecies, State_Chm%nDrydep, etc.). This can cause a large amount of memory to be allocated, especially if only a subset of species need to be archived.
@yantosca is currently working on an update that will only allocate as much memory as there are species requested in HISTORY.rc. For example, if you only request
SpeciesConc_O3
andSpeciesConc_NO
, then theState_Diag%SpeciesConc
array will only be allocated with(NX, NY, NZ, 2)
slots instead of(NX, NY, NZ, State_Chm%nSpecies)
slots. This will result in a substantial savings of memory and also CPU cycles.This work, which leverages the DiagList and TaggedDiagList data structures implemented by @christophkeller and @lizziel, should be ready for 12.9.0. More information will be forthcoming soon.
The text was updated successfully, but these errors were encountered: