#!/bin/sh -x # @$-mb -me # Send mail at beginning and end of request execution. # @$-x # Include environment info. # @$-q p8 # Queue request to queue: p8 by default. # @$ # end of batch directives. # Modification History # 06/27/1996 Tim Create # 07/08/1996 Tim Don't copy anything from $SCRATCH back to $WORKDIR. # Use WORKDIR to specify project sub dir under home dir. # Add blank lines to improve readability. # PLEASE PLEASE REVIEW THIS ENTIRE SHELL SCRIPT BEFORE MODIFYING IT # FOR YOUR RESEARCH AND SUBMITTING IT. QUESTIONS? E-MAIL THEM # TO: systems@uic.edu # Replace below with the subdirectory containing the code # and data you wish to submit to ConvexNQS+. # Replace below with the name of your executable. WORKDIR= # example: WORKDIR=/homes/home7/eisler/project1 PROGRAM=$WORKDIR/ # example: PROGRAM=$WORKDIR/program1 # # This sample NQS shell script for Convex Exemplar systems is based on the # one found at: # http://exemplar.uky.edu/nqs.html#overview # with modifications for UIC by Tim Eisler # # Copying your data to $SCRATCH is optional if you don't have # big input and output files. If you do, it speeds execution. # All it does is copy file to a filesystem on the execution # node, then back after it is done. # # Do not run any part of your shell script in the background in batch - # it won't run. # Begin first optional section: create a subdirectory in the appropriate # scratch directory. # Using a period prevents the shell from forking to run getscratch so that # environment variables set by getscratch are available to this shell. . /usr/local/bin/getscratch # Copy big data file from project directory. Assumes that the stdin file # is named foo.std_in if the executable is named foo. # If you have multiple data files, add copy statements for them. cp $SCRATCH cp $SCRATCH # and so on for all your input files # Change dir to the scratch subdirectory so stdout is written there: cd $SCRATCH # End first optional section # mpamark will change your program to use hypernode local memory. # mpamark changes the file on disk but does not execute it. # $PROGRAM *must* be an ESOM file. Use the file(1) command to check. # You should see an answer like this: # a.out: PA-RISC1.1 ESOM shared executable dynamically linked -not stripped # The Convex C Compiler, /usr/convex/bin/cc, and the Convex Fortran compiler, # /usr/convex/bin/fcc, both create ESOM type binaries. The HP Fortran # compiler, /usr/bin/f77, does not. /usr/local/bin/mpamark $PROGRAM # Now your program will be executed. Change the redirection of standard input # and output as needed. mpa -STACK -DATA $PROGRAM > $PROGRAM.std_out < $PROGRAM.std_in