-
Notifications
You must be signed in to change notification settings - Fork 0
Add classes to handle profiling of Payu configurations. #13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
53bdb1c to
b258f08
Compare
b258f08 to
e66f81c
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #13 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 10 13 +3
Lines 345 443 +98
=========================================
+ Hits 345 443 +98 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
e66f81c to
522c683
Compare
edoyango
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it looks good! My only optional suggestion is that instead of *ConfigProfiling use ModelConfigProfiling or ModelProfiling. Just because ConfigProfiling sounds like it could be configuration utilities for the profiling package (at least, that's where my mind went to before looking at the code). May also want to rename config_profiling.py for similar reasons.
So, similar to how PayuConfigProfiling is a child of ConfigProfiling and ESM16ConfigProfiling is a child of PayuConfigProfiling, would we also have a CylcConfigProfiling, which is a child of ConfigProfiling, and a rAM3ConfigProfiling which is a child of CylcConfigProfiling?
|
@edoyango Thanks for looking at the code!
I'll try to think of better names, but will wait for Manodeep's feedback before implementing any changes.
Yes, that's currently the idea. |
manodeep
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Made a few comments.
I am also not sure about the naming - for example, test_access_configs.py and test_config_profiling.py. Perhaps model is a better candidate
| logger = logging.getLogger(__name__) | ||
|
|
||
|
|
||
| class ESM16ConfigProfiling(PayuConfigProfiling): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ESM1.6 has both AMIP and PI - this one is targeting PI. Do we want to add the functionality for parsing AMIP?
(The jobname will change from access-esm1.6 to amip - but there are no MOM logs to parse for AMIP anyway)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If we change the way how we get the job name, then, from the point of view of the profiling data parsing, it should work for both configs, because missing MOM logs are simply ignored. So I would leave it as is for now and wait until the layout generators are integrated into these class to revisit this question.
522c683 to
e0aad9b
Compare
…ions (concatenating profiling data) should be handled by the ProfilingConfig class.
e0aad9b to
be1b051
Compare
|
@manodeep @edoyango I've now renamed the classes:
I also renamed the files:
Let me know what you think. |
No description provided.