Skip to content
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

[feat] lxplus condor submission without CMSSW and with mamba #99

Merged
merged 1 commit into from
Aug 9, 2024

Conversation

demuller
Copy link
Contributor

@demuller demuller commented Aug 8, 2024

  • removed CMSSW dependency from condor/execute.sh, i.e. no more dependent on centos7 architecture
  • switched from miniconda to micromamba
    • WARNING: "dirty" solution as micromamba installation script has no batch mode
    • Alternative: cleaner setup with miniconda, but much slower installation than micromamba!
  • Synced argparse of condor/submitter.pywithrunner.py`

Tested successfully on lxplus9 using command

python condor/submitter.py --workflow ttsemilep_sf --json metadata/test_bta_run3.json --campaign Summer23 --year 2023 --jobName test_wocmssw_mamba --outputXrootdDir root://eosuser.cern.ch//eos/user/m/mullerd/commFW_wocmssw_mamba/ --condorFileSize 1

Copy link
Collaborator

@Ming-Yan Ming-Yan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @demuller thank you for the PR! I have some question on the changes for enviroments.

micromamba activate
micromamba install python=3.10 -c conda-forge xrootd --yes
micromamba activate base
micromamba install setuptools=70.1.1
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there any reason to restricted here?
we actually include this in the env setup :)
https://github.com/cms-btv-pog/BTVNanoCommissioning/blob/master/test_env.yml#L17

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It was inspired by the current version of this script based on Miniconda. There, a full install of the test_env.yml on the worker node was avoided as well, likely due to conda's slowness of resolving dependencies. If you want, I can switch to setting up the entire env on the worker node using mamba

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indeed the test_env.yml only contains the restricted info
indeed the current setup also mamba install with env file, just out of curiosity why we don't need this explicity :p
image

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure either 😅 maybe it gets most packages from doing the pip install -e . command, i.e. from the setup.cfg plus resulting dependencies?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Checked the job logs, indeed the other dependencies get installed via the pip install -e . command

@@ -36,6 +36,12 @@ for key in workflow output samplejson year campaign isSyst isArray noHist overwr
ARGS[$key]=$(jq -r ".$key" $WORKDIR/arguments.json)
done

# Create base env with python=3.10 and setuptools<=70.1.1
micromamba activate
micromamba install python=3.10 -c conda-forge xrootd --yes
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we really need to specify xrootd here? I think we can get rid of this?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we really need to specify xrootd here? I think we can get rid of this?

I would need to test it

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removing the installation of xrootd in the script throws the following error:

  File "/pool/condor/dir_1916719/micromamba/lib/python3.10/site-packages/uproot/extras.py", line 78, in XRootD_client
    raise ModuleNotFoundError(
ModuleNotFoundError: Install XRootD python bindings with:

    conda install -c conda-forge xrootd

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for checking that!

Copy link
Collaborator

@Ming-Yan Ming-Yan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for checking and all looks good, going to merge!

@Ming-Yan Ming-Yan merged commit 9edb9ed into cms-btv-pog:master Aug 9, 2024
2 checks passed
@demuller demuller deleted the lxplus_condor branch August 9, 2024 09:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants