This lesson is in the early stages of development (Alpha version)

Using CVMFS on UChicago Analysis Facility Resources

Overview

Teaching: 5 min
Exercises: 5 min
Questions
  • What does analysis on lxplus look like?

Objectives
  • Login to UChicago AF and compile your analysis package

This episode assumes

  • You have an approved UChicago AF account.
  • Your code can compile and run with athena

Working on a Different Machine

At the beginning of the workshop, we had you all create accounts to use the UChicago AF system. With our analysis code in a GitLab repo, we can clone and develop on it from anywhere that has docker or has access to /cvmfs, the filesystem containing ATLAS software, such as lxplus.

Our next exercise will be to login to UChicago AF and setup our code on their Tier-3!

##Note: You can check your UChicago AF login info and status at this site: https://af.uchicago.edu/profile Username

Once your account has been activated and our SSH key uploaded, we can connect to their remote computers.

ssh -XY <username>@login.af.uchicago.edu

You will get the following output:

 Amber@MacBook-Pro  ~/Downloads  ssh -XY amber-roepe@login.af.uchicago.edu
Warning: No xauth data; using fake authentication data for X11 forwarding.
Last login: Thu Oct 14 16:43:57 2021 from ip72-200-199-227.ok.ok.cox.net
    _ _____ _      _   ___ 
   /_\_   _| |    /_\ / __|
  / _ \| | | |__ / _ \\__ \
 /_/ \_\_| |____/_/ \_\___/
Analysis Facility at UChicago
-----------------------------

-====== DOCUMENTATION ======-
Read the Docs: 
  https://usatlas.readthedocs.io/projects/af-docs/en/latest/

-======== SUPPORT ==========-
Discourse:
  https://atlas-talk.web.cern.ch/c/us-tier-3-user-support/
Admin list:
  atlas-us-chicago-tier3-admins@cern.ch
Bootcamp Discord:
  https://discord.gg/8gtvHcvn

-========= NEWS ============-
* Work filesystem is now available. Consider this
  resource to be in "alpha" state, there may be
  unexpected outages, performance issues, or file
  loss. Please remember to back up any important
  data!


File system quota report
╒════════╤══════════════╤══════════════╤═════════════╤═════════════╕
│ Path   │   Usage (GB) │   Limit (GB) │   Files (#) │   Quota (%) │
╞════════╪══════════════╪══════════════╪═════════════╪═════════════╡
│ /home  │         0.33 │          100 │          25 │        0.33 │
├────────┼──────────────┼──────────────┼─────────────┼─────────────┤
│ /work  │         0    │         5120 │           0 │        0    │
╘════════╧══════════════╧══════════════╧═════════════╧═════════════╛

[17:43] login02.af.uchicago.edu:~

Setting up on a CVMFS system

Now that we are using a new computer, we need to tell GitLab that we are the ones making changes. This means we need to make a new ssh key!

ssh-keygen -t rsa -C "<cern username>@cern.ch"
cat ~/.ssh/id_rsa.pub

and add this new key to your GitLab profile just as we did before. Everything up to this point is the same as we did previously, but we now don’t have to use docker! UChicago AF, and other systems that have access to /cvmfs, can setup and access athena on the local machine.

When we used Docker, we needed to specify the image we used (which only contained one release of Athena). Using /cvmfs locally means we can have access to any Athena release that we want to at any time! To do so, all we have to do is the following:

setupATLAS

ATLAS Software Setup

This wonderfully magic command sets us up to use Athena in all its glory. It helps by predefining functions that we can use to develop on athena code and run analyses. To setup a specific type and release number of Athena, you can do the following:

asetup <release type>,<release number>

Exercise: what branch of Athena should we use?

Answer

The docker container we used with our code previously was: atlas/analysisbase:21.2.125 so the correct command should be:

asetup AnalysisBase,21.2.125

Analyze on UChicago AF

We can now clone our analysis code and work from UChicago AF!

Exercise: setup and compile your repo on UChicago AF

We need to be sure that we have access to a DAOD to analyze. Modify the AnalysisPayload.cxx file to access the following file:

"/work/kkrizka/rucio/EXOT27/mc16_13TeV.345055.PowhegPythia8EvtGen_NNPDF3_AZNLO_ZH125J_MINLO_llbb_VpT.deriv.DAOD_EXOT27
.e5706_e5984_s3126_r10201_r10210_p4432/DAOD_EXOT27.24604725._000008.pool.root.1"

In our next lesson, we will learn how to access a friend’s repository. This is a vitally important skill when developing on ATLAS software as there are hundreds of people working on Athena at any given time.

Key Points