Command to run ScriptRunner_x. 28JAN01, HLM Usage: runScriptRunner [...] Example ------- To run ScriptRunner out of the p08.00.07 production release, % setup n32 # on d0mino % setup D0RunII p08.00.07 % runScriptRunner -filelist=mydata.dat where mydata.dat contains a list of files to process. To process files in SAM, % runScriptRunner -defname=my-dataset-definition-name To specify the trigger list file to run through coorsim, % runScriptRunner -trglst=mytrglst-x.y.xml -filelist=mydata.dat A path can also be specified % runScriptRunner -trglst=mytrglst-x.y.xml -trglstpath=pathname -filelist=mydata.dat To run using the previous coorsim files %runScriptRunner -nocoorsim -filelist=mydata.dat This command uses the more general purpose rund0exe command, specifying the appropriate exe, rcp and rcppkg. The following lists all options supported by rund0exe. All are available for runScriptRunner except -format. Command line options: --------------------- General ------- -h - Get help. Global parameters -------------------- -exe=exe - Name of executable -rcp=rcp - Name of framework rcp script -rcppkg=rcppkg - Name of framework rcp package -initscript=script - Initialization script for executable -localbuild - Use local build instead of official version -localrcp - Use local rcp's in addition to official ones -localfwkrcp - Use local version of main framework rcp -name=name - Override default job name Modes of running (default mode is interactive) ---------------- -batch - Use batch queue [default = short] -debug - Use interactive debugger. -purify - Use Purify. -profile - Use ssrun to profile (works on d0mino only). -maxopt - Use optimized build. -jobname=jobname - Specify batch job name [default = rund0exe] d0mino (LSF) batch system switches: -q=queue - Specify default batch queue. -mem=mem - Specify maximum memory. [default = 500000] Above switches ignored if SAM is being used (SAM picks the queue) clued0 (PBS) batch system switches: -cput=time - Specify maximum CPU time. [default = 3:00:00] -mem=mem - Specify maximum memory. [default = 500Mb] -node=node - Specify node where job should be run [default = system chooses] -thisnode - Run job on the current node. Source of input --------------- -filelist=filelist.dat - List of files/datasets to process -defname=defname - SAM project definition name Framework options ----------------- -num=num - Specify number of events to process [default = all] -out=file - Write processed events to specified file -forcercpoutfile - Use this switch to force the usage of the output files specified in the WriteEvent rcp (ignore -out switch) -skip=num - Specify number of events to skip [default = none] -eventlist=eventlist.dat - Process only these specific collision ids eventlist.dat is a file containing a list of collision ids. -suppress - Disable printing of individual error message in log file (Instead, a summary is printed at the end of the job) SAM options ----------- -group=group - Specify SAM group [default = dzero] Special ------- -fpe - Turn on floating point exception handling on Linux -runscript=script - Specify a custom script to run before actually running the executable. Note that this script will only work reliably if it contains command line commands. It is intended for advanced users. Description ----------- `rund0exe' can run any D0 framework executable. The user must specify the executable (-exe), the main framework rcp file (-rcp) and the package where that rcp file resides (-rcppkg). It is assumed that the D0 environment has been setup correctly by the user (e.g. setup D0RunII xx.xx.xx) before running. The command creates a new directory where the executable will be run, and all output from the job will be placed. By default, the name of the directory is a combination of executable name, release version and input file name. To override this default name, use the -name option. The command supports running the executable interactively (default) or in a batch queue (-batch). In addition, it supports running debug mode (-debug). To run in batch mode, use the -batch option (only available on platforms with a batch system). The default batch queue is 'short'. To override this default, use the -q=xxx option. To use the debug mode, use the -debug option. You must have first setup the totalview debugger. To use the utility Purify, use the -purify option. (You must have first setup purify.) Purify can take a long time to run. You may use the -batch and -q=xxx options to submit the job to the batch system. In that cause, the results will be placed in the file purify.pv. To analyze this file, use "purify -view purify.pv". User's may wish to customize their purify options. The following have been found to be useful: In ~/.purify, place the following lines: suppress umr * suppress fmr * suppress fmw * suppress abr * suppress abw * suppress fmm * Also, set the following environmental variable in your .login: setenv PUREOPTIONS "-chain-length=24" To profile your executable, use the -profile option. This currently only works on d0mino. You may find some useful information on how to analyze the results of profiling at the following web site: http://www-d0.fnal.gov/~greenlee/profile.txt The command supports processing files either available on local disk, or available within SAM. To process a set of local disk files, create an ASCII file (e.g. mydata.dat) containing a list of files to process (one line per file). Then specify this list using the -filelist option (e.g. -filelist=mydata.dat). NOTE: you must specify the complete path of each file. For example, if you wish to process the files myfile1.dat and myfile2.dat, which are located in /scratch/1/mydir, you would include the following two lines in your "mydata.dat" file: /scratch/1/mydir/myfile1.dat /scratch/1/mydir/myfile2.dat To process files within SAM, first use SAM to create a dataset definition, and then use the -defname option. For convenience, users may optionally place the SAM dataset definition name into an ASCII file, prefacing it with the string "SAMDEFNAME:", and then use the -filelist option. To specify the number of events to process, use the -num option (e.g. -num=100). To skip a certain number of events, use the -skip option. If you would like to process only specific collision ids ( ), you may use the -eventlist option. Create a file with a list of desired collision ids and use -eventlist=thatfile.dat. For example, to process event number 123456 in run 191919, create a file (eg. myevents.dat) with the line "191919 123456" and use -eventlist=myevents.dat. By default, the specified framework executable must reside in the official release. To use a locally built exe, use the -localbuild. When using this option, you should execute this command at the base of that local build. If you would like to use the executable in the official build, but make a few changes to some rcp parameters in your local area, use the -localrcp option. For example, if you would like to change a parameter in a rcp file from package xxx, first checkout that package's rcp directory using the command "cvs checkout xxx/rcp" and modify your local copy. Then issue the rund0exe command with the -localrcp option. Known Bugs ---------- In order to override a framework rcp, you must checkout the package and make a local build of the executable, and then use the -localbuild switch. Limitations ----------- 1) Running executables on Linux machines running RH 7.1, which were built on machines running RH 6.1 require special care. On CLUED0, a command has been created to allow this functionality ("setup fixexe"). Users of the CLUED0 batch system must create a special "run time script" that contains the one line "setup fixexe", and then use the option "-runscript=that.script". Please report problems to melanson@fnal.gov