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

Small fixes in ex 2 & 4 #34

Open
wants to merge 1 commit into
base: gh-pages
Choose a base branch
from
Open
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
4 changes: 2 additions & 2 deletions _episodes/02-CMSDASPreExercise-CMSLPC.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ We will use the [AlmaLinux 8](https://almalinux.org/) operating system (OS), a c
AlmaLinux 8 was chosen for CMS Run 3 data processing (AlmaLinux 9 is also available and works for most user software; see [these slides](https://indico.cern.ch/event/1126678/contributions/4786719/attachments/2417994/4138224/OandC-OS-Runs3.pdf) for the gory details).
CMS users are allocated storage space in a few places: (1) a small home directory (2 GB) at `/uscms/home/username`, ; (2) a medium storage directory (200 GB, not backed up!) at `/uscms_data/d[1-3]/username`, which is softlinked in your home directory at `/uscms/home/username/nobackup`, and (3) a large storage directory on EOS (2 TB) (special filesystem, more info later in this lesson).

The `lxplus` cluster is configured similarly, with slightly different paths and quotas allocated to users (note that `lxplus.cern.ch` is an alias for `lxplus9.cern.ch`, a login node running AlmaLinux 9 OS; use `lxplus8.cern.ch` to get
The `lxplus` cluster is configured similarly, with slightly different paths and quotas allocated to users (note that `lxplus.cern.ch` is an alias for `lxplus9.cern.ch`, a login node running AlmaLinux 9 OS; use `lxplus8.cern.ch` to access a node running AlmaLinux 8 OS).

# Logging in
Let's try logging in to `cmslpc` using SSH. SSH is a very widely used program for logging into remote Unix clusters; you can check out the [HSF SSH exercise](https://hsf-training.github.io/hsf-training-ssh-webpage/) to learn more, but for now you can just follow the commands in this exercise. The authentication for cmslpc uses kerberos (your university cluster may allow simple password login or certificate login, which are not covered here).
Expand Down Expand Up @@ -125,7 +125,7 @@ Users of cmslpc have several options for editing remote files. Here are a few ex
- Edit files on your own computer in the terminal (with the same programs), and upload using, e.g., `sftp myscript.py username@cmslpc-el8.fnal.gov:my/folder`.
- Use an application like Visual Studio Code or Sublime Text, either directly on cmslpc (using a remote filesystem plugin, which makes your directory on cmslpc appear as a folder on your computer) or on your own computer (using an SSH or SFTP plugin to automatically upload files to cmslpc). These also have lots of features, and are easier to learn than `emacs` or `vim`.

For the sake of this lesson, will will simply edit a file directly on cmslpc, using `nano`, `emacs`, or `vim`. On the **cmslpc-el8** cluster, run:
For the sake of this lesson, you will simply edit a file directly on cmslpc, using `nano`, `emacs`, or `vim`. On the **cmslpc-el8** cluster, run:

```shell
cd ~/nobackup/cmsdas
Expand Down
4 changes: 2 additions & 2 deletions _episodes/04-CMSDASPreExercise-CMSSW.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ The framework contains a large number of modules (C++), which perform tasks like
- Interfacing with external generator programs like Pythia and Madgraph_aMC@NLO;
- Lots and lots of other things.

With the advent of NanoAOD, a simple ROOT format that does need CMSSW to be analyzed, CMS analysis is increasingly being performed completely outside of CMSSW. Your analysis group might have a framework that uses standalone ROOT, RDataFrame, or Scientific Python (e.g. numpy) instead. CMSSW is needed if your analysis needs additional variables not present in NanoAOD (for example, long-lived particle analysis often need RECO-level objects like tracker or calorimeter hits). You will also probably need to use CMSSW for detector, trigger, and/or POG work.
With the advent of NanoAOD, a simple ROOT format that does not need CMSSW to be analyzed, CMS analysis is increasingly being performed completely outside of CMSSW. Your analysis group might have a framework that uses standalone ROOT, RDataFrame, or Scientific Python (e.g. numpy) instead. CMSSW is needed if your analysis needs additional variables not present in NanoAOD (for example, long-lived particle analysis often need RECO-level objects like tracker or calorimeter hits). You will also probably need to use CMSSW for detector, trigger, and/or POG work.
{: .callout}

The framework goes hand-in-hand with the "Event Data Model" (EDM), which is how CMS represents events computationally.
Expand All @@ -55,7 +55,7 @@ scram project -n "CMSSW_13_0_10_cmsdas" CMSSW_13_0_10
> Note that software environments are generally not cross-compatible! Namely, if you setup an LCG software release and CMSSW in the same session (or conda, etc.), things will break. For this exercise, make sure you have logged into a fresh session on cmslpc, so that the LCG environment from the previous exercise is not set up.
{: .callout}

> Note the release number, `13_0_10`: CMSSW is a massive project that is under continuous development, so we define "releases" that corresponds to a fixed snapshot at some point in time. `CMSSW_13_0_*` is the release used for "NanoAODv12," the [https://gitlab.cern.ch/cms-nanoAOD/nanoaod-doc/-/wikis/Releases/NanoAODv12](currently recommended version) for Run 3 analysis. The first number in series (`13`) indicates a major cycle, the second number (`0`) a major release with new features with respect to the preceeding release, and the third number (`10`) a release with minor updates and bug fixes to the preceeding release.
> Note the release number, `13_0_10`: CMSSW is a massive project that is under continuous development, so we define "releases" that corresponds to a fixed snapshot at some point in time. `CMSSW_13_0_*` is the release used for "NanoAODv12," the [currently recommended version](https://gitlab.cern.ch/cms-nanoAOD/nanoaod-doc/-/wikis/Releases/NanoAODv12) for Run 3 analysis. The first number in series (`13`) indicates a major cycle, the second number (`0`) a major release with new features with respect to the preceeding release, and the third number (`10`) a release with minor updates and bug fixes to the preceeding release.
{: .callout}

Next, execute the following commands to setup the environment in your current shell session:
Expand Down