Replies: 4 comments 3 replies
-
Tagging @briandobbins, who I think has experience here. |
Beta Was this translation helpful? Give feedback.
-
Ah, great questions -- let's start with the ECT. Basically, when porting, and comparing a specific release of CESM (no changes to the code), the ECT's value is more in verifying that that code gives statistically sound answers on your system. Put differently, we know the code is identical, so it ensures that your compilers, math libraries, operating system, etc, doesn't have anything given wrong answers. For example, in the (long) past, certain Intel compilers had a bug that gave incorrect answers, and the ECT could detect that, and people could upgrade or switch compilers to get a pass. It's also caught instances where certain optimization flags could give incorrect results, such as FMAs (fused multiply-adds), and that's another instance of just changing your compiler flags accordingly. So, in that sense, an ECT run is still a good thing to do because, assuming you use the same compilers, libraries, flags, etc, between CESM versions, it should say, "Yes, your system environment runs CESM 2.1 correctly." The catch here is that CESM 2.2 is an oddity, and our documentation is out of date (my fault, ironically!) -- I'd use CESM 2.1.5 for running an ECT, and given that you've done the porting for 2.2.2 already, I suspect this should be fairly straightforward. I'm happy to help if you run into any trouble whatsoever though. As for CTSM, I'll likely defer back to @samsrabin here, but I imagine both of us would have the same first question: Is your goal to do long-running science with it, or are you in more of an exploratory phase? I ask because the 5.3 series is new and still evolving. We are moving towards a freeze for what'll be in CESM3, but not fully there yet -- so if you're doing active research, it might also depend on when you want to do production vs trial experiments. The version in CESM2.2 is approximately four years old, I believe. So, in summary, I think you can verify your system with the ECT (using CESM 2.1), and that's likely a very strong indicator that any new releases of the code will work fine - in a sense, verifying that your port is consistent with what is expected. We'll also have an ECT for CESM3, which will include a new CTSM version, but that's still a few months out, I imagine. And there are newer versions of CTSM available now, but tuning is ongoing, so while a port can likely be trusted if an ECT passes with CESM 2.1, I wouldn't necessarily call the model validated yet. Again, I'll defer to Sam here, as he knows a lot more than I do on this. |
Beta Was this translation helpful? Give feedback.
-
@gretashum I'm just noting that the post there has to do with lower level testing than what you need. It has to do with validating smaller subsets of the model rather than the whole system which is what you need. |
Beta Was this translation helpful? Give feedback.
-
Thanks so much for all these responses! This is super helpful! |
Beta Was this translation helpful? Give feedback.
-
I'm setting up CTSM (land-only) on Hortense, which is a VSC machine at Ghent University. Since CESM prealpha tests and CTSM system tests (like clm_short) don't exactly test the correctness of results, just system functionality, and the statistical ensemble tests seem more for the full CESM, I'm wondering what I should do to validate CTSM on this new machine? I appreciated this previous post about how to approach integration testing, but I think our needs might be more basic than what's discussed. Could you give some guidance on what one should do to test the scientific consistency of CTSM on a new machine?
Beta Was this translation helpful? Give feedback.
All reactions