E3SM-Project / scream

Fork of E3SM used to develop exascale global atmosphere model written in C++
https://e3sm-project.github.io/scream/
Other
80 stars 57 forks source link

[AD] Make sure all atmosphere processes are using the memory buffer scratch space. #1095

Closed AaronDonahue closed 3 years ago

AaronDonahue commented 3 years ago

After PR #1080 all atmosphere processes should now be able to register their local memory needs with the AD memory buffer.

For SCREAMv1.1, and possibly SCREAMv1, we should verify that all active processes are in fact using this functionality.

tcclevenger commented 3 years ago

CldFraction: It seems there is no local memory there. CldFraction::main() takes in 4 FM inputs in atmosphere_cld_fraction.cpp, then internally there appears to be no local views.

What other processes need to be checked? Homme, SHOC, P3, radiation all use buffer.

Radiation may have local internal YAKL arrays?

AaronDonahue commented 3 years ago

@tcclevenger , thank you for checking on this. To date that should be all of the processes. Maybe we can keep this open until we finalized SCREAMv1.1 just in case any new processes will need to utilize the buffer. In particular, I haven't finished the SPA interface. Although I will endeavor to make sure the SPA interface is up to date.

bartgol commented 3 years ago

I like to keep the list of open issues under control (crossing 100 was already tough to digest). The risk of having many open issues is that important ones get buried in the 2nd or 3rd page, and never get addressed. In my experience, when there are few issues, it is more likely that someone will tackle them, otherwise people simply get used to the fact that there are open issues and move on.

Of course, if an issue is important, and has to be tracked, then it should be open. But it seems that this one is very minor, and can probably be closed?

AaronDonahue commented 3 years ago

That's a fair argument. We can close this one then.