Project

General

Profile

Legacy Validation » History » Version 7

Version 6 (Tomasz Golan, 06/02/2016 11:27 AM) → Version 7/9 (Tomasz Golan, 06/02/2016 11:28 AM)

h1. Legacy Validation

Legacy validation (src/scripts/production/batch) was translated to python and jobsub. At this moment, the code lives here: https://github.com/TomaszGolan/legacyValidation or here: /grid/fermiapp/genie/legacyValidation/

General comments on running GENIE on OSG can be found here: https://cdcvs.fnal.gov/redmine/projects/genie/wiki/Running_GENIE_on_grid

General instruction to legacy validation can be found on github.

h2. Step by step

h3. Builds

* go to https://buildmaster.fnal.gov/view/GENIE/job/jenkinsTest/
* choose Build with Parameters
* choose the branch, e.g. @branches/R-2_10_6@ or @trunk@
* every time build is called, svn repository is checked out, chosen branch is compiled and artifact is created
* artifact name convention: @genie_[branch]_buildmaster_YYYY-MM-DD.tgz@
* note, that name convention and link to jenkins is hard-coded in @legacyValidation/jenkins.py@



h3. Run legacy validation:

* go to @/grid/fermiapp/genie/legacyValidation/@
* run @runLegacyValidation.py@, e.g.

<pre>
./runLegacyValidation.py --genie_tag trunk --run_path /grid/fermiapp/genie/legacyValidation/runGENIE.sh --builds /grid/fermiapp/genie/builds/ --output /pnfs/genie/scratch/users/goran/legacyValidation
</pre>

* first the script will grab the last artifact for @--genie_tag@ (note, you can specified build date by hand using @--build_date@ flag)
* it will be saved / extracted in @--builds@ folder (note, this step is skipped if the build already exists in the folder)
* @--run_path@ is required; it gives the path to @runGENIE.sh@ script which is used to run every GENIE job at grid (it handles copying input files, running GENIE command and copying output to pnfs)
* the results will be saved in @--output@ folder under @[branch]/[build date]@ with the following structure

<pre>
├── events # ROOT files with event trees
│   ├── hadronization # used for hadronitzation test
│   ├── mctest # used for "sanity" test
│   ├── repeatability # used for repeatability test
│   └── xsec_validation # used for xsec validation
├── legacyValidation-[branch]-[build date].dag # this is a jobsub dag file which will be submitted
├── reports # final results
│   ├── hadronization_test
│   │   └── file_list-[branch]-[build date].xml # this is filelist xml file genrated automatically to be used for hadronization test jobs
│   ├── repeatability_test
│   ├── sanity_mctest
│   └── xsec_validation
│   ├── file_list-[branch]-[build date].xml # this is filelist xml file genrated automatically to be used for xsec test jobs
│   └── single_comparisons_with_errors # script generated one set with all plots; in this folder there are plot per test but with MC errors included
└── xsec # xsec splines
├── nuA # for nuclei
└── nuN # for nucleons
</pre>

h3. Run branches comparison