ProofOnDemand - Summary

PoD Installation

Attention!!! Always use the newest version -> check website first!

Attention: PoD needs bash shell!!!

Here we use version 3.17 and install PoD in the lxplus home directory...

cd $HOME
mkdir -p local/pod/tar
cd local/pod/tar
wget http://pod.gsi.de/releases/pod/nightly/PoD-3.17-Source.tar.gz
cd ..
tar xzf tar/PoD-3.17-Source.tar.gz
mkdir -p PoD-3.17-Source/build
cd Pod-3.17-Source/build
cmake -C ../BuildSetup.cmake ../
make
make install
source $HOME/PoD/3.17/PoD_env.sh

Setting up for CFF

PoD works right now only with root v5.XX -> This means, we have to use CMSSW versions < 75X. Usually it should be fine to produce CFF trees with any CMSSW version and just analyze them in 73X. We obtained the best reliablity with CMSSW 7_3_6.

We need some special environment for usage with the CFF, therefore create file $HOME/.PoD/user_worker_env.sh

This file should include the CMSSW environment and the proxy server. Below an examples assuming that we are working on $HOME/CMSSW_7_4_16_patch2/ and that we have created a proxy and copied it to the src directory of the CMSSW area:

#! /usr/bin/env bash
#
ORIGWD=$(pwd)
cd $HOME/CMSSW_7_3_6/src
eval `scramv1 runtime -sh`
export X509_USER_PROXY=$HOME/CMSSW_7_3_6/src/x509up_u48086
cd $ORIGWD

Furthermore, since AFS doesn't support pipes you need to change the PoD server working directory. On lxplus, we have to set this to the tmp directory.
Modify the file ~/.PoD/PoD.cfg and change the line work_dir in the [server] section:

[server]
work_dir=/tmp/your_username/

Usage

1) go to your CMSSW area and get the environment ready

cd $HOME/CMSSW_7_3_6/src
cmsenv

1b) get all the CFF-specific settings right:

SmallXAnaDefFile
SmallXAnaVersion
voms-proxy

2) source the PoD environment

source $HOME/PoD/3.17/PoD_env.sh 

3) propagate the user environment to the PoD -Server configuration

pod-server start
pod-prep-worker
pod-server restart

5) Tell the CFF to use the new PoD -Server as PROOF master export the created server username@lxplusXXXNOSPAMPLEASE.cern.ch:21001 to the environment variable proofConnectionString

export proofConnectionString=$(pod-info -c)

6) Start batch jobs that serve as PoD -Slaves, the option "-r lsf" is mandatory on lxplus. Pick an appropriate queue (-q XXX) and a reasonable number of jobs (-n X)

pod-submit -r lsf -q 1nh -n 10

7) Wait until all jobs are running and connected to the master

bjobs
pod-info -n

should both show all jobs running and n connected to the server

8) Start your standard CFF-Analyzer. It should automatically choose the PoD -Server as a master and connect the batch jobs as slaves. Attention: Right now in the CFF, the workers are shut down after the first sample, this means, that we can only run over 1 sample at a time !!!

cd CommonFSQFramework/path/to/my/analyzer/
./MyCFFAnalyzer.py

Remote Access

With the above procedure, you still have to be logged in at lxplus! PoD brings the possibility to do all this remotely with the pod-remote and/or pod-ssh plugins . This is not tested yet. Interested people might find some useful information in the PoD documentation.

-- SebastianBaur - 2016-07-07

Edit | Attach | Watch | Print version | History: r9 < r8 < r7 < r6 < r5 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r9 - 2016-07-20 - SebastianBaur
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Main All webs login

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