PDSF FAQ echo

The PDSF FAQ can be found under http://wiki.nersc.gov ->STAR->FAQ. Here is an echo of the FAQ as of 8/22/2007.

Something's not working. Where do I find the page to submit a trouble ticket (support request)?

https://help.nersc.gov/login/

How to get started from a fresh account?

_(Added by Mark Horner - 11/03/2005)_
  • Make sure you are using the correct OS using a .chos file. Details here.
  • Make sure you have switched to the local STAR databases with a dbServers.xml file
pdsf stardb.nersc.gov 3306 /tmp/mysql.sock * Make sure you are using the local libraries on PDSF not AFS with a .pdsf_setup file:
#!/usr/bin/csh -f
# Select one of the options below
# use_local strongly recommended
# to get afs based setup:
# setenv STAR_PDSF_LINUX_SETUP use_afs
#to avoid STAR setup altogether:
# setenv STAR_PDSF_LINUX_SETUP use_none
#to get local STAR setup:
setenv STAR_PDSF_LINUX_SETUP use_local
-- Main.IwonaSakrejda - 06 Jan 2005

How to access the /dante filesystem ?

The */dante* filesystem is visible from the new interactive nodes (*pdsf.nersc.gov*) and the *SGE2* batch pool. So to access */dante* you either have to log into *pdsf.nersc.gov* or if you are on one of the old interactives, open an interactive session on the *SGE2* pool with a *qsh* command.

Where can I find scheduler logs on PDSF?

The scheduler logs are in:
/auto/newspool/star_sched

Which system version will work best for a STAR user on PDSF?

PDSF offers several system versions, but at this point *RH8* works best for STAR users. Place in your home directory a *.chos* (there is a dot before "chos", it's a dot file) file with one line in it: /auto/redhat8 For more info see general PDSF FAQs.

Where can I store my data files?

All STAR users have access to the /auto/pdsfdv35/rhstar area. You can create a directory there.

If you are a member of a physics working group, you can also use diskvaults that belong to that group. Consult your PWG coordinator for more info. A list of diskvaults with groups they belong to is available at: http://www.nersc.gov/nusers/resources/PDSF/hardware/pdsfdv.php

How to get a filegroup that lets me use my PWG disk vault?

Ask your PWG coordinator to send an e-mail with a request to AARose@lbl.gov. You'll be notified when the request is processed.

How to avoid selecting mass storage resident files from the file catalog?

If the path starts with /nersc/projects/starofl then you are getting files in HPSS. You need to specify "storage != HPSS" or "storage=local" or "storage=NFS" in the conditions in your query to get files on disk.

What is the precedence for the mysql calibrations DB selection?

From low to high (available in dev and starting from SL05a):
  • The default server will be /afs/rhic.bnl.gov/star/packages/DEV/StDb/servers/dbServers.xml
  • dbSever.xml file in you home directory will take precedence over the STAR default
  • setting an environmental variable will take precedence over both:
setenv STDB_SERVERS /path/to/specific/dbServers.xml

How use a PDSF mirror of the BNL mysql DB?

To use one of several PDSF mirrors of the STAR Calibrations Data Base server you need to create a dbServers.xml file in your home directory. This file should have the following content: pdsf stardb.nersc.gov 3306 /tmp/mysql.sock

How to klog to my RHIC afs account?

PDSF does not belong to the *rhic* afs cell and our default cell is *nersc*, so you have to specify the *rhic* cell explicitely: klog -cell rhic For some users their pdsf user name is not the same as their rcf user name. In such case you need to also specify the principal: klog -cell rhic -principal

How to make minimc files from newer (P05ic) embedding data?


From starsoft post of Mark Horner (1/20/06):

You need to change the branches used:

StIOMaker* ioMaker = new StIOMaker("IO","r",MainFile,"bfcTree");
ioMaker->SetDebug();
ioMaker->SetIOMode("r");
ioMaker->SetBranch("*",0,"0"); //deactivate all branches
ioMaker->SetBranch("geantBranch",0,"r"); //activate geant Branch
//ioMaker->SetBranch("dstBranch",0,"r"); //deactivate dst Branch
ioMaker->SetBranch("eventBranch",0,"r"); //activate Event Branch
//ioMaker->SetBranch("runcoBranch",0,"r"); //deactivate runco Branch


How to submit jobs to SGE when my primary group is NOT rhstar?

SGE creates a shell from scratch and by default none of your session variables are inherited. To overcome this difficulty create a *.sge_request* file in a directory from which you plan to submit your STAR jobs. This file should contain the following lines:
-v EGROUP=rhstar
-P star
*man sge_request* will tell you more about this file. If placed in a current working directory, this file will affect *ONLY* jobs submitted from this directory. If placed in $HOME, it will affect *ALL* your jobs.

How to retrieve job qacct info for a job that ran a long time ago i.e. qacct no long knows about?

When jobs lingered in the queue for several days, the accounting file rotated and you need to specify it explicitely. First do the following:
ls -ltr /auto/sge2/default/common/acc*
(This is now something like _ls -ltr /common/sge/6.0u4/default/common/acc*_ ?) You'll get something like:
/auto/sge2/default/common/accounting.2.2005.04.22.04_19_31
/auto/sge2/default/common/accounting.2.2005.04.23.04_19_31
/auto/sge2/default/common/accounting.2.2005.04.24.04_19_31
/auto/sge2/default/common/accounting.2.2005.04.25.04_19_30
/auto/sge2/default/common/accounting.2.2005.04.26.04_19_31
/auto/sge2/default/common/accounting
Start with the accounting file that has the date when your job was submitted and work your way down:
qacct -j <job ID> -f /auto/sge2/default/common/accounting.2.2005.04.22.04_19_31


How to use SGE job arrays

_(Added by Eric Hjort - 2/7/06)_ Job arrays have many advantages, including reduced load on SGE, faster job submission, and easier job management. If you find yourself submitting thousands of jobs at a time you should use job arrays. However, the SGE documentation is somewhat lacking and arrays do make job submission more complicated. Below is a description of how SGE job arrays work (used for embedding jobs at PDSF):

Job arrays can be submitted from the command line with the -t option to qsub, e.g.,:
qsub -t 1-20:1 myjob.csh


This would submit 20 identical jobs with job indices from 1-20. If the ":1" was replaced with ":n" it would do every "n"th job.

Of course to be more useful we probably would like a different input file for each job. The way to do this is to reference $SGE_TASK_ID in your job execution, something like this in a perl script:

open(LIST,"jobFiles.list") or die "Error: $!\n";
my @labels;
while(<LIST>){
my $name = $_;
chop $name;
push @labels,$name;
}
my $whichFile = $ENV{SGE_TASK_ID} - 1;
my $filename = $labels[$whichFile];


Here "jobFiles.list" is a list of input files (stored in a temporary file) and $filename is the input file for the job. This snippet of code is run during execution (not at submission). Of course the qsub -t option in your job submission should reflect the actual number of files in your list.

Note that job arrays should be further separated by other common elements, e.g., dvio resource. If your input files are on multiple disk vaults requiring a dvio resource then submit a separate job array for each disk vault.

How do I transfer large files/file sets from RCF?

RCF allows scp outgoing, but it is very slow. A preferred method is bbftp, which is available at PDSF. First, load the module for the bbftp client:
module load bbftp
Second, execute client:

bbftp -m -e "mget &lt;files&gt; &lt;local files&gt; " -u &lt;username at rcf&gt; -p &lt;n&gt; rftpexp.rhic.bnl.gov

options:
-m
-e execute command (use -i <file> to execute commands stored in a file)
-u set user name at detination
-p <n> Set N parallel data streams