This is a draft of SP9 Install Instructions, based on the SP8 version from Dirk. Comments and suggestions are welcome. P.Kim Apr. 19, 2007 These instruction just use release 22.1.1 as an example. Other release can be installed in a similar way. 0) You need SL3 or RHEL3, Objectivity 8.0.9 and ROOT 5.14-00e **SP9 note**--------------------------------------------------------- Even though we use ROOT based Conditions Database, Objectivity is still needed due to links in shared libraries. There will be one day we will be free of Objectivity... --------------------------------------------------------------------- For convenience I would recommend to install Objectivity 8.0.9 in $BFROOT/package/objy8.0.9 If you install it anywhere else, you will need to configure SiteConfig for it. Since I don't do this, I can't really help you with what variables have to be set in which files. - get Objectivity.R8.0.9.linux86gcc3.tar.gz from /afs/slac.stanford.edu/g/babar/package/objy8.0.9/Objectivity_admin/Objectivity_src/ - extract, cd cdrom, ./install.sh - select option 3 'Custom Installation' - select 5,9,10,12 - select install directory ( highly recommend $BFROOT/package/objy8.0.9 ) - linux86gcc3 C++ include path /usr/lib/gcc-lib/i386-redhat-linux/3.2.3/include /usr/include/c++/3.2.3 /usr/include/c++/3.2.3/backward /usr/include/c++/3.2.3/i386-redhat-linux - use defaults otherwise - copy liboocx.so from SLAC ( into /linux86gcc3/lib ) - copy oolicense.runtime.txt from SLAC ( into ) Please install ROOT 5.14-00e in $BFROOT/package/root/5.14-00e Same as for Objectivity, if you install ROOT somewhere else, you will have to configure SiteConfig for it. **SP9 Note**--------------------------------------------------------------- Below is an example instal ROOT 4.03-02 for SP8 from Dirk. Please try a similar procedure with ROOT 5.14-00e. ---------------------------------------------------------------------------- For the installation at OSU I just copied ROOT 4.03-02 from SLAC. The copy is not completely trivial since there are lots of symbolic links that point to afs directories and thus can't be copied directly. I created an archive from the ROOT installation here at OSU, you can download and extract in into $BFROOT/package/root if you want. http://www.physics.ohio-state.edu/~hufnagel/SP/4.03-02.tgz ----------------------------------------------------------------------------- **** Gerald Ragghianti created a tar file for 5.14-00e. Thanks, Gerald! http://hep.phys.utk.edu/~gragghia/babar/root-5.14-00e.tgz ************************************************************************* 1) Install base release 22.1.1 BFARCH is now Linux24SL3_i386_gcc323 quick recipe for release installation : get AFS token setenv BFDISTr /afs/slac.stanford.edu/g/babar/dist (if you are in Europe you should probably import from somewhere closer) importrel -pa 22.1.1 importarch -p 22.1.1 Linux24SL3_i386_gcc323 remove AFS token, might not be necessary, I always do it before 'gmake siteinstall' **SP9 Note**---------------------------------------- There was a question why remove AFS token. Please try either way and let me know the result. ---------------------------------------------------- srtpath 22.1.1 cd $BFDIST/releases/22.1.1 gmake siteinstall For more details on how to import releases to remote sites, http://www.slac.stanford.edu/BFROOT/www/Computing/Environment/Tools/SRT/SRTuser-node5.html 2) For lettered version install, just replace 22.1.1 with 22.1.1x, for example. 3) Create test release for 22.1.1 a) srtpath 22.1.1 b) newrel -t 22.1.1 22.1.1 e) cd 22.1.1 f) srtpath; addpkg workdir; gmake installdirs; gmake workdir.setup 4) No .bbobjy is needed in SP9. *** Please corect me if this is not right *** 5) Download snapshot (ROOT CDB) The web page for importing conditions and configuration datasets is here: http://www.slac.stanford.edu/BFROOT/www/Computing/Distributed/DataDist/cdbCfgExport.html *** Ashok posted in simuprod-hn how he has set ROOT conditions/configurations at uvic *** http://babar-hn.slac.stanford.edu:5090/HyperNews/get/simuprod/3001/3/1/1/1.html *** We will update this document with Ashok's examples! *** Downloading the snapshot is similar to background trigger events: BbkImport --dbsite=slac --dbname bbkr18 --noupdate-sql --dataset Nonevent-CDB-SP9-full \ --remote=0 --ftp-type=bbcp --nstreams 10 --window 1M --multiple 10 --reverse \ bbrdist@bbr-xfer01.slac.stanford.edu To find out what snapshot you will need and where to download it from, go to http://www.slac.stanford.edu/BFROOT/www/Computing/Offline/Production/run_ranges_sp9.html 6) Download new set of background triggers srtpath 22.1.1 get AFS token BbkImport --dbsite=slac --dbname bbkr18 --noupdate-sql --dataset BkgTriggers-OnPeak,BkgTriggers-OffPeak \ --remote=0 --ftp-type=bbcp --nstreams 10 --window 1M --multiple 10 --reverse \ bbrdist@bbr-xfer01.slac.stanford.edu The is the directory that contains store/SP/BkgTriggers. The '--nstreams ...' options are all bbcp options, depending on your site setup you might need other options here (especially the reverse might or might not work). The options quoted here worked for me at OSU. BbkImport uses a package that depends on BaBar::SQL, which only exists at sites that use a MySQL or Oracle database. To get around this dependency at other sites, you can create a dummy BaBar::SQL package. Create a file $BFROOT/lib.shared/perl/BaBar/SQL.pm which looks like this # # dummy module # package SQL; 1; Overall this will import ~80GB of new background collections. Make sure you have enough free disk space. Update: The connection to slac is setup in ~/.bbk by the BbkGetConnectInfo script. That script is part of the release, but also part of the bin package and the bin package is first in the search path. The bin package version of the script uses /usr/local/bin/perl, not the site specific configured perl version for BaBar. Make sure /usr/local/bin/perl exists, set a link if it doesn't (or modify the bin version of BbkGetConnectInfo). 7) How to convert to ROOT CDB from Objectivity CDB The default setting for Conditions database is to use Objectivity. To use ROOT CDB, the environment settings should be changed: setenv CDB_ROO_BOOT kanga::/SP9/full/cdb_boot.root setenv CFG_DEFAULT_IMPL ROOT unsetenv OO_FD_BOOT 8) Validation runs for 22.1.1 Make sure to use the correct ProdTools version (currently V00-06-12). The validation runs for each SP9 release are listed at http://www.slac.stanford.edu/BFROOT/www/Computing/Offline/Production/run_ranges_sp9.html Compare your validation runs against the SLAC reference run (only in V01 for AMD), There is a new script to make validation easier. I know some sites wrote their own versions, here is how to use mine : validate.csh An example : cd $BFROOT/prod/log/validation/ validate.csh 5990265 5990273 slac 02 osu 01 Checking run 5990265 : Number of discrepancies: 0 Checking run 5990266 : Number of discrepancies: 0 Checking run 5990267 : Number of discrepancies: 0 Checking run 5990268 : Number of discrepancies: 0 Checking run 5990269 : Number of discrepancies: 0 Checking run 5990270 : Number of discrepancies: 0 Checking run 5990271 : Number of discrepancies: 0 Checking run 5990272 : Number of discrepancies: 0 Checking run 5990273 : Number of discrepancies: 0 9) First 22.1.1 generic MC allocation For SP9 the dimuon mode 3981 will be part of the generic MC production, so a generic allocation will from now on contain modes 1235,1237,1005,3429,3981 and 998. Make sure to use the correct ProdTools version (currently V00-06-12). I highly recommend to try the 'spbuild -n ' feature to build runs. It will connect to SLAC, find the runs allocated to your site and build them. Sprite will use this feature, so you don't have to prebuild runs anymore, sprite will do that too. If you use site specific options for spbuild (--local for instance), this is not yet supported (but will be soon trough an option in sprite_rc). If you want to prebuild runs because you need site specific options, you can either use spbuild run1-run2 or spbuild -n 100 I would recommend to use the second command to check that it works. You have to use it repeatedly to get all the runs in the allocation build. If less than 100 runs are left, spbuild will build whatever is available. If no runs are left, spbuild will do nothing. If you use the '-n' option to build runs, also check that you get the runs allocated to your site (compare to email I sent you). The system we envision is to use sprite for a fully automated MC production. Sprite will build the runs that are allocated to your site. When the pool of allocated runs to your site falls below a certain threshold, I get an automatic notification (not in place yet) and allocate more runs to your site. SP production at your site just keeps on going. The current sprite will always build SP8 runs, even if you want to use it to handle SP6 production. For sites that still produce SP6 MC and which want to use sprite for both SP6 and SP8 production this causes a problem since the SP6 sprite will build and submit SP8 runs which will then of course fail because they will run against the wrong database. For now do not use sprite with SP6. To fix this we will add an option to sprite_rc to select the cycle. By creating two sprite_rc versions, one can then run two sprites like this spcontrol -f sprite_rc start This also means two different ALLRUNS directories (and merge directories) will be needed, one for SP6 and the other for SP8. The sites that will probably produce at least some SP6 MC are osu, cu-boulder, infn and maybe uvic. These sites should seperate SP6 and SP8 into different ALLRUNS and merge directories if they want to use sprite. If they don't want to use sprite, SP6 and SP8 production can in principle work in the same ALLRUNS and merge dirs, but I think it's still a good idea to keep them seperate. ==========================================================================