-
Notifications
You must be signed in to change notification settings - Fork 46
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
Create cupid workflow #176
base: main
Are you sure you want to change the base?
Conversation
Created template.cupid file and added a workflow to run it. Added module load conda to run successfully for. Added a load conda command to the config_machines.xml file for derecho. Updated the scratch path on casper.
machines/template.cupid
Outdated
# Batch system directives | ||
{{ batchdirectives }} | ||
|
||
module load conda |
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.
@jedwards4b even though @ingridc2051 added module load conda/latest
to the derecho config_machines.xml
file, without this line she gets a CondaError: Run 'conda init' before 'conda activate'
error from the conda activate cupid-dev
line. Do you happen to know why we seemingly need to load the module twice?
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 suspect that it's because the cesm environment is not being loaded by your script - let me look into how to do that and get back to you.
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.
@jedwards4b What if we replace the module load conda
with source .env_mach_specific.sh
? That should get everything from env_machines.xml
into the environment of the compute node, right? @ingridc2051 can you try that when you get a chance?
- module load conda
+ source .env_mach_specific.sh
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.
Yes - that should work - good idea.
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.
It sounds like this worked given the test that @ingridc2051 performed.
Before this PR can be opened up for review and merged in:
A second PR to make CUPiD more usable would include
|
…mmands in the template are run with the correct environment set up. Add module load nco to config_machines.xml file
ccs_config_cesm1.0.6
template.cupid assumes CUPiD is in the CESM source tree (tools/CUPiD) and runs the generate script from there. Also cleaned up some white space
generate_cupid_config_file.py now expects some commandline arguments, so the cupid template as been modified accordingly.
@jedwards4b What controls whether |
I think that case.st_archive might be a hardcoded special case in the python - I'll look at the code tomorrow and let you know. |
In utils.py at line 2533. I think that we should remove that and make it an option in the config_workflow.xml file instead. |
Cool, I'll make do with the file being hidden for now but we can talk about what it would look like to add a |
machines/template.cupid
Outdated
{{ batchdirectives }} | ||
|
||
source .env_mach_specific.sh | ||
conda activate cupid-dev |
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.
Cupid-dev is now cupid-infrastructure
.
We should then add in generating timeseries files, creating an ADF config file, and running ADF.
We will also want to use cupid-diagnostics
(the updated name for cupid-run
) below (line 11).
After cupid-diagnostics
, we can add cupid-webpage
to build the webpage.
These will eventually be populated from an env_?.xml file, but for now starting a list of variables we want the user to be able to set. Also added two minor updates: 1. unset PYTHONPATH to ensure we are only using conda-installed python packages 2. The API for the script to generate the ADF config file has been changed - we now point to the directory containing a CUPiD config file rather than the CUPiD example
Create a new workflow to allow users to run CUPiD after the short-term archiver.