Plugin reference

This table describes the tags used in the plugin files.

Tag

Attribute

Description

plugin

name

The plugin’s unique name. This should include the program/library the plugin is for, and its version. This is shown in the Run dialog.

plugin

description

A short snippet of text to describe the purpose of the plugin/program to the user. This is shown in the Run dialog.

preload

name

Preloads a shared library of this name into the user’s program. The shared library must be locatable using LD_LIBRARY_PATH, or the OS will not be able to load it.

environment

name

Sets a particular environment variable before running the user’s program.

environment

value

The value that this environment variable should be set to.

breakpoint

location

Adds a breakpoint at this location in the code. The location can be in a preloaded shared library (see above). Typically this is a function name, or a fully-qualified C++ namespace and class name. C++ class members must include their signature and be enclosed in single quotes, for example, ‘MyNamespace::DebugServer:: breakpointOnError(char*)

breakpoint

action

Only message_box is supported in this release. Other settings will stop the program at the breakpoint but take no action.

breakpoint

message_variable

A char* or const char* variable that contains a message to be shown to the user. Identical messages from different processes will be grouped together before displaying them to the user in a message box.

extra_control_process

hide

Starts one more MPI process than the user requested. The optional hide attribute can be first or last, and will hide the first or last process in MPI_COMM_WORLD from the user. This process will be allowed to execute whenever at least one other MPI process is executing, and messages or breakpoints (see above) occurring in this process will appear to come from all processes at once. This is only necessary for tools such as Marmot that use an extra MPI process to perform various runtime checks on the rest of the MPI program.

tracepoint

location

Similar to breakpoint location.

tracepoint

variables

A comma-separated list of variables to log on every passing of the tracepoint location.