xgSubmit Command

xgSubmit Command (xgSubmit.exe)

The xgSubmit.exe tool is used to submit tasks to the IncrediBuild Grid Engine. Submitted tasks are queued for execution and executed on either a remote or local CPU, as soon as one becomes available. Each submitted task can be assigned a group identifier using the /group argument. Tasks of the group are executed in parallel to one another by IncrediBuild. xgWait.exe can be used throughout the script to pause execution until all tasks with a given group identifier have completed. Note that the purpose of the group identifier is only to group a set of submitted tasks; it is NOT related in any way to Coordinator Build Groups.

Important Note:

xgSubmit.exe can be used to submit a single task or a set of tasks specified in a command file (for better performance when submitting a large group of tasks).

Usage

The following syntax is used in running xgSubmit:

xgSubmit [/group=<Group Identifier>] [/wait] /allowremote=[allow_remote] [/caption] /commandfile <Path to Command File> /command <Original Command line>

Command-Line Options

Option Function Values/Notes
/group The identifier of the Group to which this task belongs to. If no Group identifier is given, the submitted task will belong to the default Group.
/wait

When specified, xgSubmit only returns control to the script when the submitted command has completed execution.

/allowremote Specifies whether remote processing is possible.

on: The submitted task may be distributed to a remote Agent.

off: The submitted task runs on the machine that initiated the Execution/Job, and is not distributed to a remote Agent.

/caption When used, the specified caption appears as the caption for the submitted tasks's progress bar in the Execution Monitor Progress page.
/commandfile Should always be specified last, followed by the path to the file containing the commands to be submitted. xgWait.exe /all is implicitly called at the end of the script/application's execution, in order to allow all tasks submitted with xgSubmit.exe to complete before returning control to the initiating Agent.

/command

If a command file is not specified, the original command should be specified.

Single Task Submission Syntax

This syntax is used to submit a single task to the Grid Engine queue. The usage syntax is:

xgSubmit [Arguments] /command <Tool Command Line>

Note that the "/command" argument should always be specified last, followed by the command line to be submitted for execution.

The arguments are:

See explanations in above table.

Command File Submission Syntax

This syntax can be used for better performance when submitting a large set of tasks belonging to the same task group. A command file containing the command lines to be submitted separated by a newline character is given as input. xgSubmit.exe then reads and submits the commands specified in the command file. The usage syntax is:

xgSubmit [/group=<Group Identifier>] /commandfile <Path to Command File>

Note that the "/commandfile" argument should always be specified last, followed by the path to the file containing the commands to be submitted.

Arguments:

See explanations in above table.

Task Grouping

In many cases, there is a need to ensure that certain tasks do not begin before others complete. In order to create such dependencies, you can group tasks so that a defined Group can be processed in parallel, but a sequence of Groups will run serially.