NAME
globus_gram_job_manager_rsl - RSL Attributes This page contains a list
of all RSL attributes which are supported by the GRAM Job Manager.
arguments
The command line arguments for the executable. Use quotes, if a
space is required in a single argument.
count
The number of executions of the executable.
directory
Specifies the path of the directory the jobmanager will use as the
default directory for the requested job.
dry_run
If dryrun = yes then the jobmanager will not submit the job for
execution and will return success.
environment
The environment variables that will be defined for the executable
in addition to default set that is given to the job by the
jobmanager.
executable
The name of the executable file to run on the remote machine. If
the value is a GASS URL, the file is transferred to the remote gass
cache before executing the job and removed after the job has
terminated.
file_clean_up
Specifies a list of files which will be removed after the job is
completed.
file_stage_in
Specifies a list of (’remote URL’ ’local file’) pairs which
indicate files to be staged to the nodes which will run the job.
file_stage_in_shared
Specifies a list of (’remote URL’ ’local file’) pairs which
indicate files to be staged into the cache. A symlink from the
cache to the ’local file’ path will be made.
file_stage_out
Specifies a list of (’local file’ ’remote URL’) pairs which
indicate files to be staged from the job to a GASS-compatible file
server.
gass_cache
Specifies location to override the GASS cache location.
gram_my_job
Obsolete and ignored.
host_count
Only applies to clusters of SMP computers, such as newer IBM SP
systems. Defines the number of nodes (’pizza boxes’) to distribute
the ’count’ processes across.
job_type
This specifies how the jobmanager should start the job. Possible
values are single (even if the count > 1, only start 1 process or
thread), multiple (start count processes or threads), mpi (use the
appropriate method (e.g. mpirun) to start a program compiled with a
vendor-provided MPI library. Program is started with count nodes),
and condor (starts condor jobs in the ’condor’ universe.)
library_path
Specifies a list of paths to be appended to the system-specific
library path environment variables.
max_cpu_time
Explicitly set the maximum cputime for a single execution of the
executable. The units is in minutes. The value will go through an
atoi() conversion in order to get an integer. If the GRAM scheduler
cannot set cputime, then an error will be returned.
max_memory
Explicitly set the maximum amount of memory for a single execution
of the executable. The units is in Megabytes. The value will go
through an atoi() conversion in order to get an integer. If the
GRAM scheduler cannot set maxMemory, then an error will be
returned.
max_time
The maximum walltime or cputime for a single execution of the
executable. Walltime or cputime is selected by the GRAM scheduler
being interfaced. The units is in minutes. The value will go
through an atoi() conversion in order to get an integer.
max_wall_time
Explicitly set the maximum walltime for a single execution of the
executable. The units is in minutes. The value will go through an
atoi() conversion in order to get an integer. If the GRAM scheduler
cannot set walltime, then an error will be returned.
min_memory
Explicitly set the minimum amount of memory for a single execution
of the executable. The units is in Megabytes. The value will go
through an atoi() conversion in order to get an integer. If the
GRAM scheduler cannot set minMemory, then an error will be
returned.
project
Target the job to be allocated to a project account as defined by
the scheduler at the defined (remote) resource.
proxy_timeout
Obsolete and ignored. Now a job-manager-wide setting.
queue
Target the job to a queue (class) name as defined by the scheduler
at the defined (remote) resource.
remote_io_url
Writes the given value (a URL base string) to a file, and adds the
path to that file to the environment throught the
GLOBUS_REMOTE_IO_URL environment variable. If this is specified as
part of a job restart RSL, the job manager will update the file’s
contents. This is intended for jobs that want to access files via
GASS, but the URL of the GASS server has changed due to a GASS
server restart.
restart
Start a new job manager, but instead of submitting a new job, start
managing an existing job. The job manager will search for the job
state file created by the original job manager. If it finds the
file and successfully reads it, it will become the new manager of
the job, sending callbacks on status and streaming stdout/err if
appropriate. It will fail if it detects that the old jobmanager is
still alive (via a timestamp in the state file). If stdout or
stderr was being streamed over the network, new stdout and stderr
attributes can be specified in the restart RSL and the jobmanager
will stream to the new locations (useful when output is going to a
GASS server started by the client that’s listening on a dynamic
port, and the client was restarted). The new job manager will
return a new contact string that should be used to communicate with
it. If a jobmanager is restarted multiple times, any of the
previous contact strings can be given for the restart attribute.
rsl_substitution
Specifies a list of values which can be substituted into other rsl
attributes’ values through the mechanism.
save_state
Causes the jobmanager to save it’s job state information to a
persistent file on disk. If the job manager exits or is suspended,
the client can later start up a new job manager which can continue
monitoring the job.
scratch_dir
Specifies the location to create a scratch subdirectory in. A
SCRATCH_DIRECTORY RSL substitution will be filled with the name of
the directory which is created.
stderr
The name of the remote file to store the standard error from the
job. If the value is a GASS URL, the standard error from the job is
transferred dynamically during the execution of the job.
stderr_position
Specifies where in the file remote standard error streaming should
be restarted from. Must be 0.
stdin
The name of the file to be used as standard input for the
executable on the remote machine. If the value is a GASS URL, the
file is transferred to the remote gass cache before executing the
job and removed after the job has terminated.
stdout
The name of the remote file to store the standard output from the
job. If the value is a GASS URL, the standard output from the job
is transferred dynamically during the execution of the job.
stdout_position
Specifies where in the file remote output streaming should be
restarted from. Must be 0.
two_phase
Use a two-phase commit for job submission and completion. The job
manager will respond to the initial job request with a
WAITING_FOR_COMMIT error. It will then wait for a signal from the
client before doing the actual job submission. The integer supplied
is the number of seconds the job manager should wait before timing
out. If the job manager times out before receiving the commit
signal, or if a client issues a cancel signal, the job manager will
clean up the job’s files and exit, sending a callback with the job
status as GLOBUS_GRAM_PROTOCOL_JOB_STATE_FAILED. After the job
manager sends a DONE or FAILED callback, it will wait for a commit
signal from the client. If it receives one, it cleans up and exits
as usual. If it times out and save_state was enabled, it will leave
all of the job’s files in place and exit (assuming the client is
down and will attempt a job restart later). The timeoutvalue can be
extended via a signal. When one of the following errors occurs, the
job manager does not delete the job state file when it exits:
GLOBUS_GRAM_PROTOCOL_ERROR_COMMIT_TIMED_OUT,
GLOBUS_GRAM_PROTOCOL_ERROR_TTL_EXPIRED,
GLOBUS_GRAM_PROTOCOL_ERROR_JM_STOPPED,
GLOBUS_GRAM_PROTOCOL_ERROR_USER_PROXY_EXPIRED. In these cases, it
can not be restarted, so the job manager will not wait for the
commit signal after sending the FAILED callback
username
Verify that the job is running as this user.