Annotation of badi/public_scripts/parallelstarter/README, revision 1.1
1.1 ! adi 1: parallelstarter quick how-to
! 2: ----------------------------
! 3:
! 4: parallelstarter is a script to start a process multiple times in parallel. It controls
! 5: the number of processes that run simultaniousely and it can call custom scripts to set
! 6: up an environment for each process. There are three examples included, one for the matsim
! 7: benchmark test, one for biogeme and one for a database backup script called db_backup.
! 8: The processes you start get their command line arguments from a file. Each line in this
! 9: file contains the arguments for one process to start; thus the number of lines give the
! 10: number of processes to start in total.
! 11:
! 12: System requirements: GNU/Linux
! 13:
! 14:
! 15: Installation/ Setup:
! 16: - check out the latest parallelstarter from IVT CVS
! 17: - cd into the checked out directory
! 18: - run ./install_parallelstarter
! 19: - cd to your working direcotory
! 20: - run setup_parallelstarter in the working directory you want to collect the output of
! 21: your called processes. The script creates some softlinks to the predefined processes
! 22: matsim, biogme or db_backup, depending the argument you pass to it.
! 23: - edit parallelstarter.setup to fit your needs:
! 24: In this file you control the number of simultaniousely running processes,
! 25: the command to start one and the command line arguments that are identical for all processes.
! 26: - you are now ready to call parallelstarter in this directory
! 27:
! 28: For your own process setup, do the following:
! 29: - edit parallelstarter.prepare_process_start:
! 30: This file is a script to copy or link the files or directories needed to run one process. Predefined matsim
! 31: for example expects a template directory, where the matsim Benchmark.jar lies (get ist from
! 32: http://matsim.org/benchmark). This is the working directory you would use normally to start the process
! 33: without parallelstarter.
! 34: This script should create a working directory in the directory you call parallelstarter for each process, change into
! 35: it if the process writes to the current dir, it should set up links to libraries, copy or link config files etc. See
! 36: the example for the matsim benchmark test by calling "setup_parallelstarter matsim".
! 37: - edit parallelstarter.cleanup:
! 38: This file is a script for postprocessing, after all runs have finished.
! 39: - The example of biogeme generates its argument list file automatically, see the code for more details.
! 40:
! 41: Using parallelstarter:
! 42: - Create a file with the differing command line arguments for your runs. biogeme and db_backup does this on its own, they
! 43: need a different config file from which they create the argument list file automatically. For matsim benchmark, you can
! 44: test different JVM parameters for example by listing them in this file, each combination of switches on one line.
! 45: It's name is configured in parallelstarter.setup.
! 46: Each line in this file will trigger one run to start. The full command line for a process is put together as follows:
! 47:
! 48: $RUN_BIN $COMMON_LEADING_ARGS <one line from $ARGLIST_FILE> $COMMON_POST_ARGS
! 49: ^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^
! 50: (the underlined options are set up in parallelstarter.setup)
! 51:
! 52: - start your runs: parallelstarter [--quiet --quiet-run --rundir-prefix --runid-offset]
! 53: where the options have the following effect:
! 54: --quiet suppress all output but errors
! 55: --quiet-run suppress output from the started process
! 56: --rundir-prefix prefix each run's working directory with this string
! 57: --runid-offset start numbering each run's working directory with this number
! 58: --help all switches shortly explained
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>