GRID usage

source /afs/cern.ch/atlas/offline/external/GRID/ddm/DQ2Clients/setup.sh 
voms-proxy-init -voms atlas

For dq2 usage this must be done after the athenarelease setup.

For pathena grid jobs it must be done before the athenarelease setup: (1) setup Grid - (2) setup Athena - (3) setup Panda

DQ2 HowTo: https://twiki.cern.ch/twiki/bin/viewauth/Atlas/DQ2ClientsHowTo

DQ2 Tutorial: https://twiki.cern.ch/twiki/bin/viewauth/Atlas/DQ2Tutorial

Panda setup

source /afs/cern.ch/atlas/offline/external/GRID/DA/panda-client/latest/etc/panda/panda_setup.sh
export PATHENA_GRID_SETUP_SH=/afs/cern.ch/project/gd/LCG-share/current_3.2/etc/profile.d/grid_env.sh

https://twiki.cern.ch/twiki/bin/viewauth/Atlas/PandaAthena

Dataset requests: http://panda.cern.ch/server/pandamon/query?mode=ddm_req

Grid jobs overview: http://panda.cern.ch/server/pandamon/query?ui=register&name=Wolfgang%20Lukas&reload=yes

Good Run Lists: https://twiki.cern.ch/twiki/bin/viewauth/Atlas/GoodRunsListsTutorial#Running_in_Athena

ATHENA and Programming

https://twiki.cern.ch/twiki/bin/view/Atlas/ImprovingSoftwareQandA

http://www.ep.ph.bham.ac.uk/twiki/bin/view/ATLAS/AthenaTricks

https://twiki.cern.ch/twiki/bin/view/Atlas/SoftwareDevelopmentWorkBookDebuggingCode

https://twiki.cern.ch/twiki/bin/view/Atlas/FindingMemoryLeaks

https://twiki.cern.ch/twiki/bin/view/Atlas/SoftwareDevelopmentWorkBookRuleChecker

https://twiki.cern.ch/twiki/bin/view/Atlas/SoftwareDevelopmentWorkBookAthenaEssentials

https://twiki.cern.ch/twiki/bin/view/Atlas/WorkBookPackages

setupAthena AtlasProduction,dev,opt,32,runtime
setupAthena AtlasProduction,17.5.X-VAL,rel3,opt,32,runtime,msc

http://atlas-computing.web.cern.ch/atlas-computing/projects/releases/status/

Arrays and Pointers in C: http://www.ibiblio.org/pub/languages/fortran/append-c.html

CMT

Check out package tag used in this release:

pkgco.py <package>

First tag for new package:

avn.py tag <package>-00-00-00 -m "comment"

Compile single package from anywhere:

cmt broadcast -select=<package> gmake -j3

Which package tags are in which releases?

get_tag ...

SVN access manager: https://atlas-svnaccessmanager.cern.ch/

gmake compilation options

gmake QUICK=1
usable after the first compilation, skips setting all links in InstallArea and is much faster
gmake clean
"uninstalls" the package from InstallArea (slow)
gmake binclean
only removes binaries for a fresh recompilation (fast)
gmake install_includes
this target only installs the header files in the InstallArea, so that other packages can compile against this one without a full compilation
cmt broadcast
prepend this to every command that you want to execute to the package and all it's dependencies, e.g. cmt br cmt config, cmt br gmake, etc.

ISF

https://twiki.cern.ch/twiki/bin/viewauth/Atlas/AtlasISF

EOS and CASTOR

Mounting the EOS filesystem

The EOS space can be mounted as a local filesystem on AFS:

mkdir -p $HOME/eos
eosmount $HOME/eos

To unmount the EOS filesystem, just run

eosumount $HOME/eos

More info:

https://twiki.cern.ch/twiki/bin/view/Atlas/ATLASStorageAtCERN

https://twiki.cern.ch/twiki/bin/view/Atlas/AdvancedUsage

CASTOR HowTo

https://twiki.cern.ch/twiki/bin/view/Atlas/CastorPools#ATLASCERNUSERDISK

  • login with Athena (see above)

nsls -l /castor/cern.ch/user/w/wlukas/
nsmkdir -p /castor/cern.ch/user/w/wlukas/subdir1/subdir2
nsrm -r /castor/cern.ch/user/w/wlukas/subdir1

xrdcp $LOCALFILE root://castoratlas//castor/cern.ch/user/w/wlukas/...
xrdcp root://castoratlas//castor/cern.ch/user/w/wlukas/... $LOCALFILE

Access from ROOT

TFile *file = TFile::Open("root://castoratlas//castor/cern.ch/user/w/wlukas/...");

Batch queues & jobs

  • look at batch queues:
bqueues | grep cat
  • how long are jobs running (CPU time):
bjobs -l | grep "seconds"
  • submit a script to specific queue with parameters: e.g.
bsub -q 1nh _eLossScript.sh 10 1 999
bsub -q atlascatshort
bsub -q atlascatlong

Tracking Geometry

Material Maps

Material Mapping and Validation: https://twiki.cern.ch/twiki/bin/view/Atlas/TrackingGeometryMaterial

COOL

https://twiki.cern.ch/twiki/bin/view/Atlas/CoolTagging

cylinder driven GEO comparisons

G4

  • generate plots from ROOT files using the EnergyLossRecorder:
    • Tracking/TrkG4Components/TrkG4UserActions
    • /share/EnergyLossSimulation_jobOptions.py
    • usually with a batch script:
      • /share/_runeLossScript.sh ... sends "_eLossScript.sh" to the batch queue several times
      • each of these instances creates a temp folder on its lxbatch machine where it stores the large output files,
      • and then runs the athena job (via the jobOptions file),
      • and then copies the ROOT and log files to Castor
    • adjust the script such that it will write to your own Castor space, and also that it will find your local jobOptions file
    • maybe the random seed part must be adapted too (python random seed generator)
  • use a ROOT script to "glue" these ROOT files together as a TChain and to make the desired comparison plots
    • currently in private AFS space (needs docu and rewrite)
  • The plots themselves show all the material seen by Geantinos until the given cylinder surface (at the given r or z, whichever is traversed first) is reached. The cylinder layers are defined in the jobOptions by setting their r and z values, e.g.:
    EnergyLossAction.set_Properties({"verboseLevel":"0",
                                 "cylinders" : "2",
                                 "R1":"600",   "Z1":"2700",
                                 "R2":"1170",  "Z2":"2748",
    (...)
                                  })

This is not done in the "usual" way with jobOptions parameters, because all G4UserActions require their own way to be added to the AlgSequence, therefore all parameters are passed via set_Properties() to the ParseProperties() function in the EnergyLossRecorder. This is always a string-string (key-value) pair. Zach Marshall is one of the experts on this.

TG

  • generate plots from ROOT files using the EnergyLossValidation:
    • Tracking/TrkExtrapolation/TrkExExample
    • /share/EnergyLossValidation_jobOptions.py
    • usually with a batch script:
      • /share/_runEnergyLossScript.sh ... sends "_energyLossScript.sh" to the batch queue ONCE for each energy
      • each of these instances creates a temp folder on its lxbatch machine where it stores the large output files,
      • and then runs the athena job (via the jobOptions file),
      • and then copies the ROOT and log files to Castor
    • adjust the script such that it will write to your own Castor space, and also that it will find your local jobOptions file
    • maybe the random seed part must be adapted too (python random seed generator)
  • use a ROOT script to "glue" these ROOT files together as a TChain and to make the desired comparison plots
    • currently in private AFS space (needs docu and rewrite)
  • The plots themselves show all the material seen by Geantinos until the given cylinder surface (at the given r or z, whichever is traversed first) is reached. The cylinder layers are defined in the jobOptions by setting their r and z values, e.g.:
### MS study (for Niels van Eldik)
EnergyLossValidation.ValidationCylinders  = 6
EnergyLossValidation.ValidationCylinderR  = [ 0, 4250, 4440, 6200,  8500, 11500, 12000 ]
EnergyLossValidation.ValidationCylinderZ  = [ 0, 6527, 7100, 8000, 10500, 16000, 22025 ]

Usually the job takes about 200s CPU time for 10^5 events, and 1300s for 10^6 events:

------------------------------------------------------------
# LSBATCH: User input
_energyLossScript.sh 17.0.5.2 ATLAS-GEO-18-01-03 10000 pt 1000000 1 Atlas
------------------------------------------------------------

Successfully completed.

Resource usage summary:

    CPU time   :   1305.05 sec.
    Max Memory :      2690 MB
    Max Swap   :      2892 MB

    Max Processes  :         6
    Max Threads    :         8

Release Coordination

ID Release Coordination

Deadline for nightlies = 21:00 (or 21:22?)

How to collect new tags:

  • Main page: --> Get TagApproval info for dependencies of: (pulldown menu)
  • --> Tools --> PowerUser Home --> Packages
  • ... search ... select
  • --> show active versions
  • --> 4th column "packageTag": click the tag
  • ?
  • lower left: --> RequestUpdatePVApproval
  • ... to be completed

Tony's instructions: https://twiki.cern.ch/twiki/bin/view/Atlas/InDetReleaseCoordination

Tony says:

Yes we can collect it in 15.6.X.Y since it's a monitoring fix. You just have check what tag is in there currently and whether it can be updated with the new tag, i.e that it doesnt depend on other newer tags not available in the 15.6.X.Y release. Then to test the tag that you want to submit to 15.6.X.Y-VAL

source setup.sh -tag=15.6.X.Y-VAL,AtlasProduction,rel_1

Independently run the following three tests, and check that there are no FATALS or ERRORs caused by your change

Reco_trf.py AMI=q120
Reco_trf.py AMI=q121
Reco_trf.py AMI=q122
Reco_trf.py AMI=q125

If that's ok, send a mail to both Andi Salzburger and Thijs Cornelisen to request the tag be collected to 15.6.X.Y-VAL, which is the base release for Tier0. Monitoring updates are allowed at Tier0. Developers have rights to collect 16.X.0-VAL, but not in general production caches.

tag diff command

/afs/cern.ch/user/a/alibrari/scripts/tags_diffs_afs_afs.sh --new rel_6 --old rel_5 --nightly dev | egrep "Tracking|InnerDetector"

More resources on RC tasks and workflows

ID Software Documentation: https://twiki.cern.ch/twiki/bin/view/Atlas/InDetSoftwareDocumentation

HowTo run InDetRecExample: https://twiki.cern.ch/twiki/bin/view/Atlas/HowToRunInDetRecExample

Tag Collector: https://twiki.cern.ch/twiki/bin/view/Atlas/TagCollectorInAtlas

Tag approval: https://twiki.cern.ch/twiki/bin/view/Atlas/AtlasReleaseValidation#4_Tag_Approval_Procedure

Nightly builds: https://twiki.cern.ch/twiki/bin/view/Atlas/NightlyBuildSummary#Instructions_for_Release_Coordin

Submit to AtlasProduction: https://twiki.cern.ch/twiki/bin/view/Atlas/AtlasReleaseValidation#5_1_Instructions_for_submitting

Deliverables: https://twiki.cern.ch/twiki/bin/view/Atlas/InDetRelease16

Release plans: https://twiki.cern.ch/twiki/bin/view/Atlas/SoftwareReleasePlans

Release status: http://atlas-computing.web.cern.ch/atlas-computing/projects/releases/status/

ATLAS projects: https://twiki.cern.ch/twiki/bin/view/Atlas/WorkingWithProjectBuilds

Nightly builds: https://twiki.cern.ch/twiki/bin/view/Atlas/NightlyBuildSummary

RecoTrf: https://twiki.cern.ch/twiki/bin/view/Atlas/RecoTrf

Reco Instant Validation: https://twiki.cern.ch/twiki/bin/view/Atlas/RecoInstantValidation

Using checkreq: https://twiki.cern.ch/twiki/bin/view/Atlas/SoftwareDevelopmentWorkBookCheckReq

How people can submit tags to AtlasProduction

  1. Go to TC2
  2. in TOOLS menu, choose Power User Home
  3. you'll get a new window, broken up in 4 sub-windows;
  4. in top-left window, choose AtlasProduction, this will update the lower-right window where you should be able to choose 16.0.1.2
  5. this in term will update the top-right table, click on 16.0.1.2 there
  6. this will update lower-left window, where under the list of available commands you should see RequestAddNewPVApproval - click on it
  7. select your tag in the lower right corner, fill in the fields and submit your request

Bug reports - "Postponed" etc.

Originally the postponed status was only supposed to be used for Tier0 bugs in the Data Quality area due to things which were not real bugs for the Tier0 (they only affected the TCT and NOT the Tier0 running) being sat open for ages. So the postponed was a flag to let the shifter know this bug was in this category and hence not urgent according to Data Quality experts.

Check NICOS Warnings

Other Stuff

tar / zip

tar -cvwf file.tar myfile.txt
gzip -v9 file.tar

unarchive:

tar -zxvf name.tgz

  • set symbolic links to here:
ln -s linkedpath .
  • remove dead symbolic links:
find -L -type l -delete

LaTeX, style guides, publications

https://twiki.cern.ch/twiki/bin/view/AtlasProtected/PubComHome

https://twiki.cern.ch/twiki/bin/view/AtlasProtected/PubComTemplates

https://secure.wikimedia.org/wikibooks/en/wiki/LaTeX

http://happymutant.com/latex/

W mass

A 15-20 MeV precision in the W mass requires 1μm alignment precision. -- see http://cdsweb.cern.ch/record/1363306 (see p.10)

https://twiki.cern.ch/twiki/bin/view/AtlasProtected/WMassMeasurement

misc

http://mcviz.net/

Vector clip art: http://www.clker.com/

bash

########################################### ### set file permissions for batch

test -x _energyLossScript.sh || chmod u+x _energyLossScript.sh #find -name "_energyLossScript.sh" ! -perm -755 -exec chmod 755 '{}' \;

-- WolfgangLukas - 16-Jun-2010

Edit | Attach | Watch | Print version | History: r31 < r30 < r29 < r28 < r27 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r31 - 2012-06-29 - WolfgangLukas
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Sandbox All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback