Launching

Usually, your queue script ends in a line that starts with your target executable.

In a template file, this must be modified to run a command that also launches the Linaro Forge backend agents.

This section refers to some of the methods for doing this.

Using AUTO_LAUNCH_TAG

This is the easiest method to launch Linaro Forge backend agents, and caters for the majority of cases. Replace your command line with AUTO_LAUNCH_TAG. Linaro Forge replaces this with a command appropriate for your configuration (one command on a single line).

For example an mpirun line that looks like this:

mpirun -np 16 program_name myarg1 myarg2

Becomes:

AUTO_LAUNCH_TAG

AUTO_LAUNCH_TAG is roughly equivalent to:

DDT_MPIRUN_TAG DDT_DEBUGGER_ARGUMENTS_TAG \\
MPI_ARGUMENTS_TAG PROGRAM_TAG ARGS_TAG

A typical expansion is:

/opt/linaro/forge/x.y.z/bin/forge-mpirun --ddthost login1,192.168.0.191 \
--ddtport 4242 --ddtsession 1 \
--ddtsessionfile /home/user/.allinea/session/login1-1 \
--ddtshareddirectory /home/user --np 64 \
--npernode 4 myprogram arg1 arg2 arg3

Using forge-mpirun

If you need more control than is available using AUTO_LAUNCH_TAG, Linaro Forge also provides a drop-in mpirun replacement that can be used to launch your job.

Note

This is only suitable for use in a queue template file when Linaro Forge is submitting to the queue itself.

Replace mpirun with DDTPATH_TAG/bin/forge-mpirun.

For example, if your script currently has the line:

mpirun -np 16 program_name myarg1 myarg2

Then (for illustration only) the equivalent that Linaro Forge must use would be:

DDTPATH_TAG/bin/forge-mpirun -np 16 program_name myarg1 myarg2

For a template script, you use tags in place of the program name, arguments and so on, so that they can be specified in the user interface rather than editing the queue script each time:

DDTPATH_TAG/bin/forge-mpirun -np NUM_PROCS_TAG \\
EXTRA_MPI_ARGUMENTS_TAG DDTPATH_TAG/libexec/forge-backend \\
DDT_DEBUGGER_ARGUMENTS_TAG PROGRAM_TAG PROGRAM_ARGUMENTS_TAG

See Queue template tags for more information on template tags.

Scalar programs

If AUTO_LAUNCH_TAG is not suitable, you can also use the following method to launch scalar jobs with your template script:

DDTPATH_TAG/bin/forge-client DDT_DEBUGGER_ARGUMENTS_TAG \\
PROGRAM_TAG PROGRAM_ARGUMENTS_TAG