Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
80 changes: 80 additions & 0 deletions _episodes/01.5-documentation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
---
title: DUNE Documentation
teaching: 10
exercises: 0
questions:
- Where can I find documentation for DUNE
objectives:
- Learn how to get access to DUNE documentation
- Learn how to find DUNE documentation
keypoints:
- There is documentation somewhere!
---

## Documentation access

Much of DUNE's computing documentation is public and hosted in github

But some requires access via Fermilab SSO or CERN credentials. Documentation is protected for several reasons.

1. it includes specifics about computing systems that might assist hackers

2. it contains preliminary information about scientific or technical projects that have not been cleared for publication

3. it contains confidential details about contracts/purchases

4. it just ended up there

We strongly suggest that DUNE collaborators obtain both [Fermilab computing accounts](https://get-connected.fnal.gov/users/access/) and, at least, a [CERN Guest account](https://cern.service-now.com/service-portal?id=kb_article&n=KB0007539).

Those actively engaged in running prototypes at CERN likely need to get full [CERN Neutrino Platform computing access](https://neutrino-secretariat.web.cern.ch) and join the appropriate egroups.

## DUNE tools list

[https://atwork.dunescience.org/tools/](https://atwork.dunescience.org/tools/)
lists a large number of DUNE data repositories.

This document highlights a sub-sample and how to access them


## Docdb (Requires FNAL SSO)

Docdb is the main repository for analysis notes and physics results.

[https://docs.dunescience.org](https://docs.dunescience.org)

New DUNE collaborators should be given access automatically and can then use the
[SSO Link](https://docs.dunescience.org/cgi-bin/sso/DocumentDatabase)

if that isn't working, use the [Apply for access](https://docs.dunescience.org/cgi-bin/sso/CertificateApplyForm) link on the main page.

## DUNE wiki (Requires FNAL SSO)

The DUNE wiki is at [https://wiki.dunescience.org](https://wiki.dunescience.org/)

New users should be automatically added to the access list. If you can't access the wiki please send mail to [dune-communications@fnal.gov](mailto:dune-communications@fnal.gov) specifying the error you see. We've found that changing your email address can result in access problems.


### Tutorials list on the wiki

[https://wiki.dunescience.org/wiki/Computing_tutorials](https://wiki.dunescience.org/wiki/Computing_tutorials) is a list of available tutorials.

## CERN EDMS

Many technical specifications are stored in the CERN EDMS system

[https://edms.cern.ch/](https://edms.cern.ch/)

Most files are accessible without login but submitting documents requires a CERN computing account.

## Github repositories

DUNE has a Github organization: [https://github.com/DUNE/](https://github.com/DUNE/). Repositories in that organization are generally public to read but you need to request access through [dune-communications@fnal.gov](mailto:dune-communications@fnal.gov).

Many repositories have wikis or associated dune.github.io pages.

## DUNE Computing FAQ

[Computing FAQ](https://github.com/orgs/DUNE/projects/19)

Lists of common connection problems and issues with running jobs.
2 changes: 1 addition & 1 deletion _episodes/02-storage-spaces.md
Original file line number Diff line number Diff line change
Expand Up @@ -295,7 +295,7 @@ root -l root://dune.dcache.nikhef.nl:1094/pnfs/nikhef.nl/data/dune/generic/rucio
~~~
{: .language-bash}

See the next section on [data management](({{ site.baseurl }}/03-data-management)) for instructions on finding files worldwide.
See the next episode on [data management]({{ site.baseurl }}/03-data-management) for instructions on finding files worldwide.

> ## Note Files in /tape_backed/ may not be immediately accessible, those in /persistent/ and /scratch/ are.
{: .callout}
Expand Down
2 changes: 1 addition & 1 deletion _episodes/03.2-UPS.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ keypoints:
> You need to be in the Apptainer to use it.
> UPS is being replaced by a new [spack][Spack Documentation] system for Alma9. We will be adding a Spack tutorial soon but for now, you need to use SL7/UPS to use the full DUNE code stack.
>
> Go back and look at the [SL7/Apptainer]({{ site.baseurl }}setup.html#SL7_setup) instructions to get an SL7 container for this section.
> Go back and look at the [SL7/Apptainer]({{ site.baseurl }}/setup.html#SL7_setup) instructions to get an SL7 container for this section.
{: .challenge}

An important requirement for making valid physics results is computational reproducibility. You need to be able to repeat the same calculations on the data and MC and get the same answers every time. You may be asked to produce a slightly different version of a plot for example, and the data that goes into it has to be the same every time you run the program.
Expand Down
11 changes: 3 additions & 8 deletions _episodes/05-end-of-basics.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,6 @@ Learn about `bash`, `github`, `python`, `cmake`, `root` and many more HEP comput

- [The LArSoft tutorial at CERN, February 3-7, 2025](https://indico.cern.ch/event/1461779/) password on the [tutorials page](https://wiki.dunescience.org/wiki/Computing_tutorials)

- [Make your code more efficient]({{ site.baseurl }}/05.1-improve-code-efficiency.md)
- [The MRB build system]({{ site.baseurl }}/05.5-mrb.md)
- [How to modify and rebuild LArSoft Modules]({{ site.baseurl }}/06-larsoft-modify-module.md)
- [Grid job submission]({{ site.baseurl }}/07-grid-job-submission.md)
- [Grid job submission with justin]({{ site.baseurl }}/08-submit-jobs-w-justin.md)
- [Debugging grid jobs]({{ site.baseurl }}/09-grid-batch-debug.md)

---
- [Make your code more efficient]({{ site.baseurl }}/05.1-improve-code-efficiency)
- [LArSoft basics](https://dune.github.io/computing-basics-larsoft)
- [Batch submission basics](https://dune.github.io/computing-basics-batch) (coming soon)
2 changes: 1 addition & 1 deletion _extras/ComputerSetup.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ See the information about [Windows]({{ site.baseurl }}/Windows.html) terminal co
- Alternatively, if you have access to a remote linux system through your institution you can use the Windows terminal/X-windows connections described in [Windows]({{ site.baseurl }}/Windows.html) to connect to that system and work there.

> # Note
> You should now be ready to go for the ({{ site.baseurl }}/setup.html)
> You should now be ready to go for the ({{ site.baseurl }}/setup)
{: .callout}

## Extra - Get a compiler/code editor
Expand Down
13 changes: 11 additions & 2 deletions _extras/al9_setup_2025.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,15 @@ export RUCIO_ACCOUNT=${USER}
~~~
{: .language-bash}

You can ignore the warning messages - this is still under development

You can ignore most warning messages - this is still under development - but pay attention to this one.

> ## Note
> > ## You may see a rucio config error message that looks like this
> > ~~~
> > ==> Warning: Your rucio config /nashome/X/XXXXX/.config/rucio/dune/etc/rucio.cfg does not list oidc authentication
> > If you remove it and spack load r-m-dd-config again it will get regenerated with oidc (Token) authentication
> > ~~~
> > {: .output}
> > This happens if you've run older versions of rucio that used kx509 authentication. Remove `$HOME/.config/rucio/dune/etc/rucio.cfg` as it advises and rerun the `spack load r-m-dd-config` command to reset the config file. You should not need to do this again.
> {: .solution}
{: .callout}
12 changes: 8 additions & 4 deletions index.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,14 +49,18 @@ By the end of this workshop, participants will know how to:

* Utilize data volumes at FNAL.
* Understand good data management practices.
* Know how to run basic root analysis on Fermilab or CERN unix systems.
* Know how to set up to run basic ROOT-based analysis on Fermilab or CERN unix systems.
<!-- * Provide a basic overview of art and LArSoft to a new researcher. -->

There are additional materials provided that explain how to:
There are additional tutorials in this series:

* [Develop configuration files to control batch jobs]({{ site.baseurl }}/07-grid-job-submission)
- [LArSoft Basics](https://dune.github.io/computing-basics-larsoft)
- [Batch submission Basics](https://dune.github.io/computing-basics-batch)


<!-- * [Develop configuration files to control batch jobs]({{ site.baseurl }}/07-grid-job-submission)
* [Use the Justin system to process data]({{ site.baseurl }}/08-submit-jobs-w-justin)
* [Modify LArSoft modules]({{ site.baseurl }}/06-larsoft-modify-module)
* [Modify LArSoft modules]({{ site.baseurl }}/06-larsoft-modify-module) -->

You will need to be a DUNE Collaborator (listed member), and have a valid FNAL or CERN computing account to join the tutorial. Contact your DUNE group leader for assistance.

Expand Down
18 changes: 15 additions & 3 deletions setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ Also check out our [Computing FAQ](https://github.com/orgs/DUNE/projects/19/view

## 0. Basic setup on your computer.

[Computer Setup]({{ site.baseurl }}/ComputerSetup.html) goes through how to find a terminal and set up xwindows on MacOS and Windows. You can skip this if already familiar with doing that.
[Computer Setup]({{ site.baseurl }}/ComputerSetup) goes through how to find a terminal and set up xwindows on MacOS and Windows. You can skip this if already familiar with doing that.

> ## Note
> The instructions directly below are for FNAL accounts. If you do not have a valid FNAL account but a CERN one, go at the bottom of this page to the [Setup on CERN machines](#setup_CERN) section.
Expand Down Expand Up @@ -352,6 +352,18 @@ spack load justin
~~~
{: .language-bash}


> > ## You may see a rucio config error message that looks like this
> > ~~~
> > ==> Warning: Your rucio config /nashome/X/XXXXX/.config/rucio/dune/etc/rucio.cfg does not list oidc authentication
> > If you remove it and spack load r-m-dd-config again it will get regenerated with oidc (Token) authentication
> > ~~~
> > {: .output}
> > This happens if you've run older versions of rucio that used kx509 authentication. Remove `$HOME/.config/rucio/dune/etc/rucio.cfg` as it advises and rerun the `spack load r-m-dd-config` command to reset the config file. You should not need to do this again.
<!-- > {: .solution} -->
{: .callout}


> ## Optional
> > ## See if ROOT works
> > Try testing ROOT to make certain things are working
Expand Down Expand Up @@ -662,15 +674,15 @@ log into `lxplus.cern.ch`
fire up the Apptainer as explained in [SL7 Setup](#SL7_setup) but with a slightly different version as mounts are different.

~~~
/cvmfs/oasis.opensciencegrid.org/mis/apptainer/current/bin/apptainer shell --shell=/bin/bash\
/cvmfs/oasis.opensciencegrid.org/mis/apptainer/current/bin/apptainer shell --shell=/bin/bash \
-B /cvmfs,/afs,/opt,/run/user,/etc/hostname --ipc --pid \
/cvmfs/singularity.opensciencegrid.org/fermilab/fnal-dev-sl7:latest
~~~
{: .language-bash}

You may have to add some mounts - here I added `/afs/` but removed `/nashome/`, `/exp/`, `/etc/krb5.conf` and `/pnfs/`.

You should then be able to proceed with much of the tutorial thanks to the wonder that is [`/cvmfs/`]({{ site.baseurl }}/03.3-cvmfs.html).
You should then be able to proceed with much of the tutorial thanks to the wonder that is [`/cvmfs/`]({{ site.baseurl }}/03.3-cvmfs).

Set up the DUNE software

Expand Down