Athena related notes and observations
TABLE OF CONTENTS
Notation Throughout the TWiki
Text type |
Example |
Meaning |
Brown verbatim text |
> source script.sh |
Type the command into the shell prompt |
Purple verbatim text |
> TBrowser t |
Type the command into the Athena/Python/ROOT prompt |
Standard verbatim text |
script.sh |
Code snippets and file names |
Green verbatim text |
Output="Hello" |
Run/job/script output |
Blue verbatim text |
Package-01-02-03 |
Package names |
Italics |
Terminus Technicus |
Any technical term |
Bold |
important |
Anything important within the text |
Red bold text |
VERY IMPORTANT |
Anything deadly important |
< Text within tags > |
<Example> |
Substitute for your concrete instance |
1 Athena
1.1 Athena 32-bit vs. 64-bit
Please note that 64-bit Athena is not officially supported and you are discouraged from using it. 32-bit and 64-bit give
different results.
To ensure you use only 32-bit, always use the following tag in your
requirements
files:
apply_tag 32
1.2 Using modified packages
Your
$InstallArea
gets detected automatically. To run with modified packages:
cd ${HOME}/${TestArea}/<MODIFIED PACKAGE>/cmt
source setup.sh
cmt config
1.3 ATLAS Geometries
Description of different ATLAS geometry tags here:
https://twiki.cern.ch/twiki/bin/view/Atlas/AtlasGeomDBTags
https://twiki.cern.ch/twiki/bin/view/Atlas/InDetGeometryTags
1.4 Job Transformations hack for modified packages
If you want Job Transformations for running Athena to use your modified packages in your
$TestArea
, use the following lines to prepend the Athena environment variables:
export PATH=${TestArea}/InstallArea/share/bin:${TestArea}/InstallArea/i686-slc3-gcc323-opt/bin:${PATH}
export LD_LIBRARY_PATH=${TestArea}/InstallArea/i686-slc3-gcc323-opt/lib:${LD_LIBRARY_PATH}
export CMTPATH=${TestArea}/:${CMTPATH}
export SEAL_PLUGINS=${TestArea}/InstallArea/i686-slc3-gcc323-opt/lib/modules:${SEAL_PLUGINS}
export PYTHONPATH=/${TestArea}/InstallArea/python:${PYTHONPATH}
export DATAPATH=${TestArea}/InstallArea/share:${DATAPATH}
export JOBOPTSEARCHPATH=${TestArea}/InstallArea/jobOptions,${JOBOPTSEARCHPATH}
export XMLPATH=${TestArea}/InstallArea/XML:${XMLPATH}
2 LXPLUS
2.1 Prolonging LXPLUS login ticket
When you login on LXPLUS you get a ticket valid for 25 hours, then you get disconnected.
It can be prolonged by following command:
> kinit
It will ask for your AFS password.
2.2 How to make LXPLUS Startup Script
It is much more easier to setup your enviroment in a way, that all complicated commands are issued by calling one function. You can use the startup script for that. It is run just after you login to LXPLUS and needs to have a specific name according to your shell.
You can find out your shell type by issuing the following command:
> echo $SHELL
Startup Script File Name:
More information here:
https://twiki.cern.ch/twiki/bin/view/Atlas/AtlasLogin
You can change your shell type here:
http://cra.cern.ch -> Login -> CRA (left menu) -> End-Users options -> User Info -> My Details -> Shell
Example of startup script content: Athena Load Function
# LOAD ATHENA by version, general function for the script
function Load.Athena {
source ${CMT_HOME}/setup.sh -tag=$*
shift
}
You run the setup by specifying your
$CMT_HOME
directory to where you want and then for instance do:
> Load.Athena 14.2.10,32
Download:
You can download the whole startup ZSH script at the end of the page, however TWiki has intelligently modified the name of the script, so you will have to change to name to
.zlogin
:
2.3 LXBATCH
LXBATCH is batch system for LXPLUS users. It is also a part of the LHC Computing Grid (LCG).
Full Documentation:
http://batch.web.cern.ch/batch/
Quick Introduction:
http://batch.web.cern.ch/batch/doc/quick-intro.html
or try help for the
bsub
command:
> bsub -h
Important note: athena vs. athena.py
Please note the following before you use LXBATCH:
For unknown magical reasons
athena
command alias is
missing on LXBATCH. For this reason you have to use
athena.py
in all your batch scripts. It is suggested to use it everywhere.
athena.py <JobOptions>
3 GRID
3.1 Functions for startup script
Declares functions to load Grid, Ganga in a specified version of Athena
Note:
Load.Grid
and
Load.Ganga
requires
Load.Athena
function
LOAD GRID:
## ENVIROMENT VARIABLES
export LFC_HOST=lfc-atlas
## FUNCTIONS
# LOAD GRID function
function Load.Grid {
cd ${HOME}/grid
echo "Loading GRID Environment"
# Specify CMT_HOME Directory
export CMT_HOME=${HOME}/cmt-grid
echo "Your CMT home directory:" ${CMT_HOME}
echo "Your LFC host:" ${LFC_HOST}
# Initialize LXplus user interface
source /afs/cern.ch/project/gd/LCG-share/sl4/etc/profile.d/grid-env.sh
# DQ2 clients to be able to list and download files from the grid
source /afs/cern.ch/atlas/offline/external/GRID/ddm/DQ2Clients/setup.sh
echo "LXPLUS Interface Initialized"
# Show recommended TestArea
echo ${TestArea}
# Login
echo "Loging in to GRID"
voms-proxy-init --voms atlas
}
LOAD GANGA:
# LOAD GANGA function
function Load.Ganga {
cd ${HOME}/grid
echo "Loading Ganga Environment"
echo "Your LFC host:" ${LFC_HOST}
# automatic LXPLUS Ganga setup
source /afs/cern.ch/sw/ganga/install/etc/setup-atlas.sh
}
Now just type
Load.Grid
and
Load.Ganga
into the shell and you are in.
--
MartinZeman - 23 Jul 2008