-
Notifications
You must be signed in to change notification settings - Fork 15
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
Merge out lpc #91
base: master
Are you sure you want to change the base?
Merge out lpc #91
Conversation
Important to mention, I was able to merge 3 datasets with this in about 20-25 minutes compared to >24 hours with mergeOut.py. |
A few questions/comments before I look over this more carefully:
|
|
This is all sounding good so far. I have no additional comments at the moment. Happy to take a look at the next commit. |
This PR needs to be made on top of #97, and so is a work in progress. |
this PR is still a work in progress? not ready to merge yet? |
@jalimena this is still in progress, it's been left alone for a while but is still important. I'll be returning to finish this off soon. |
can we revisit this PR soon? I've occasionally killed LPC nodes by running the normal mergeOut.py interactively. (Can someone remind me why the mergeOut.py option to run on condor doesn't work on the LPC?) In general, it might be nice to get some of these OSUT3Analysis issues completed before Run 3. |
We do need to revisit this, definitely. LPC merging is slow, and gets only worse as you grow larger |
thanks a lot!! |
This script is not very kind yet, and checks for very little problems. Simply for all datasets specified, it makes a tarball of all the
hist_*.root
files in the job directory, ships them off to condor, and merges them a few at a time. Then a second running of this script with-2
or--step2
will merge those mini-merged files into a single file.It will not check that your input files are good, it will not check that they are all there. It will not yet tell you clearly if it encountered any problems. It won't care if you're close to hitting your quota on /uscms_data/ and this makes big tarball copies of all this histogram files. There's plenty of work remaining to make this a good script, but for now it accomplishes its task.
I've checked the output from this script and confirmed it's identical to the usual
mergeOut.py
results.Workflow:
mergeOut.py -l localConfig.py -w jobDirectory --skipMerging
-- this still must be done because you need to check the skim outputs and job statuses, and make the resubmission scripts if need be. If this step finds a failed job, proceeding will merge only the partial results and the user needs to remember this.mergeOutLPC.py -l localConfig.py -w jobDirectory
-- wait for all of these condor jobs to complete. This step may take ~2-3 minutes to create the hist_*.root tarballs.mergeOutLPC.py --step2 -l localConfig.py -w jobDirectory
-- this will also take a few minutes.Result of steps 1-3: a new file
finished_<dataset>.root
. For now this change of file name from<dataset>.root
is intentional in case users have used the regularmergeOut.py
and want to check this script for problems. You will also have all the intermediate stepsminiMerge_<dataset>_<job index>.root
and hist tarballs -- for now these are not deleted automatically while we make this script better at detecting errors.Future improvements: