Skip to main content

Cornelis Technical Documentation

5.2.7. Application Parameters

Applications are defined within the Applications section. This section contains zero or more Application sections.

The layout is as follows:

<Applications>
    <Application>
      <!-- application parameters -->
    </Application>
</Applications>

Note

A working example configuration for Application is provided in the default opafm.xml configuration file.

Each Application section has zero or more ServiceIDs subsections and/or MGIDs subsections. These are matched against PathRecord and Multicast SA queries so that the returned SLID/DLID, PKey, SL, and so on are appropriate for the vFabric that contains the application(s).

ServiceIDs subsections are 64-bit values that identify applications within a PathRecord query. In many ways, ServiceIDs are the Omni-Path’s equivalent of TCP socket ports. ServiceIDs are typically used within the Omni-Path Communication Manager protocol to identify the application making a connection request. When an application issues a PathRecord query to the SA, the ServiceID in the query is compared against the ServiceID subsections in the various VirtualFabrics sections.

ServiceIDs are assigned by application writers and standards bodies such as IEEE. Consult with the application supplier to determine the Service IDs used by the application.

Multicast GIDs (MGIDs) are 128-bit values that identify multicast groups for Unreliable Datagram applications such as IPoIB. MGIDs are represented as two 64-bit values separated by a colon (:). For example: 0xabc:0x123567

This way of representing 128-bit values is the same as used in other FastFabric Toolset commands such as opasaquery, opashowmc, and so on. Applications not used in any vFabric have no effect.

Note

The default opafm.xml configuration file contains many standard preconfigured applications that are referenced in VirtualFabrics, which can be created by the administrator.

Note

Omni-Path mechanisms establish connections for the association of applications to VirtualFabrics, by using the ServiceID in PathRecord SA queries (for unicast applications) and the use of MGIDs in McMemberRecord SA queries (for multicast applications).

Note

Some unicast applications, notably openmpi, mvapich , and mvapich2, use nonstandard mechanisms to establish connections. Therefore, the unicast applications must have their PKey and BaseSL manually configured consistent with the vFabric used.

Table 8. Application Parameters

Parameter

Description

Name

Name for the Application.

Every Application must have a unique name. The name must be unique among all Application names within an FM instance. When defined at the Common level, the name must be unique within all instances.

The name is limited to 64 characters and is case-sensitive.

ServiceID

A single 64-bit service ID to match against.

ServiceIDRange

A range of service IDs to match against.

Any service ID within the range (inclusive) is considered a match.

The range is two 64-bit values separated by a dash such as:

0-0xffffffffffffffff

ServiceIDMasked

A masked compare of service ID to match against.

Matches service IDs that when ANDed with the second value (the mask) match the first value.

The mask is two 64-bit values separated by an asterisk (*) such as:

0x120003567*0xff000ffff

MGID

A single 128-bit MGID to match against.

MGIDRange

A range of MGIDs to match against.

Any MGID within the range (inclusive) is considered a match.

The range is two 128-bit values separated by a dash such as:

0:0-0xffffffffffffffff:0xffffffffffffffff

MGIDMasked

A masked compare of MGID to match against.

Matches MGIDs that when ANDed with the second value (the mask) match the first value.

The mask is two 128-bit values separated by an asterisk (*) such as:

0xabc:0x120003567*0xfff:0xff000ffff

Select

Special selection cases.

The following selection cases can be used as an easy catch-all:

  • UnmatchedServiceID - matches all applications' service IDs that match none of the vFabrics after filtering by src/dest/requestor.

  • UnmatchedMGID - matches all applications' MGIDs that match none of the vFabrics after filtering by src/dest/requestor.

  • SA - allows an application to be specified that includes SA queries. This allows SA query operations to be assigned to an appropriate vFabric. SA queries must use the default Partition Key (0x7fff or 0xffff). However, other aspects of SA access can be controlled (SL, and so on).

  • PA - allows an application to be specified that includes all PM sweep traffic. This allows PM operations to be assigned to an appropriate vFabric in a manner similar to that of the SA selector. Applications containing PM traffic must use the management Partition Key. Only one vFabric may reference any application group containing PM traffic. Additionally, all ports in the fabric must be either a full or limited member of this vFabric.

The listed specifiers are case-insensitive.

By having multiple select parameters, multiple special cases can be combined as needed in the same application section.

IncludeApplication

This includes all of the service IDs, MGIDs, and special selections in the given application.

Loops (including the parent application) are not allowed.

There is a nesting limit of 32.