A 3-hour hands-on tutorial for HEP graduate students on
TaskVine,
VineReduce, and
vine-cms-analysis-stack.
Students take one real CMS analysis from a single process on a login node, to a TaskVine worker on the same machine, to an HTCondor pool, while the processor code stays the same each time. Along the way they learn to read a run's health, tune chunk and resource sizes, restart without redoing work, ship large results out of band, and keep a run going when some chunks fail. The analysis is written both with coffea and with ROOT's RDataFrame, and students pick one.
Start here: docs/index.md
You don't need to clone this repository. Read the tutorial from the web,
and clone only vine-cms-analysis-stack, as described in
Module 1. The scripts and dataset manifests you
run are in that clone, under examples/tutorial_nd/.
Do Module 1 before the session: building and packing the environment can take up to 15 minutes each.
| Start | # | Module | Minutes |
|---|---|---|---|
| 0:00 | 0 | Intro / motivation (lecture) | 15 |
| 0:15 | 1 | Setup & verify | 15 |
| 0:30 | 2 | Local distributor: map/reduce concepts | 15 |
| 0:45 | 3 | Local TaskVine factory | 20 |
| 1:05 | Break | 10 | |
| 1:15 | 4 | Scale out: packaging, catalog, condor, certs, real data | 30 |
| 1:45 | 5 | Resources & chunk/reduction size | 15 |
| 2:00 | 6 | Checkpoints & restart | 20 |
| 2:20 | Break | 10 | |
| 2:30 | 7 | Multiple processors | 10 |
| 2:40 | 8 | Shipping results out: result_postprocess |
15 |
| 2:55 | 9 | Wrap-up / where to get help | 5 |
| Total | 180 |
| # | Module | Minutes |
|---|---|---|
| 10 | failure_proportion |
15 |
Reference material outside the session's 180 minutes is in the Appendix.
The site is built with MkDocs and the Material theme; pixi
installs both from pixi.toml.
git clone https://github.com/cooperative-computing-lab/vine-cms-analysis-stack-tutorials.git
cd vine-cms-analysis-stack-tutorials
pixi run mkdocs serve # live preview at http://127.0.0.1:8000
pixi run mkdocs build --strict # static site in site/Pages live in docs/, the navigation in mkdocs.yml, and the styling in
docs/stylesheets/extra.css.
See LICENSE.