Building Filter Expressions Using Graphical Interface

Use the Filtering dialog box to specify filter expressions separately for function events, messages and collective operations under the respective tabs. You can also use the Processes tab to restrict the events to a subset of processes.

Some of the text fields in the filter dialog box can take triplets that are of the form start:stop:incr or the short form start:stop if the increment is one. Such a triplet describes all numbers greater than or equal to start and smaller than or equal to stop and that are of the form start+incr*n. The stop value is optional, too. When stop is omitted, all numbers, beginning from start, match.

Processes Tab

Use this tab to specify the processes to pass the filter. This tab has effects on all three sub-expressions: Functions, Messages and Collective Operations.

Use This:

To Do This:

Show Processes

List the desired processes in the text field to see them in the resulting view and filter out all the other processes.

The text field can contain a comma-separated list of process ids, process group ids, triplets thereof, unquoted or double-quoted names of threads, processes or process groups. Names given match all equally named processes/groups.

Three-dot-labeled button

Open the Process Group Selection dialog box and select one or more processes or process groups.

Invert

Swap the selection.

For example, if you want all processes except one to pass the filter, select the process to be filtered out and use the Invert check box. It is a logical NOT and it is marked with an exclamation mark before the predicate in the filter expression.

See the resulting filter expression below the filter clauses. To reuse the expression elsewhere, select and copy the expression in the manual mode of the filtering dialog box.

The context menu of the filter expression contains a Copy (Ctrl+C) entry and a Select All (Ctrl+A) entry.

Functions Tab

In the Functions tab, use the All, None and Custom radio buttons to select the mode of filtering.

Intel® Trace Analyzer

To enable the filter clause tab, select the Custom radio button. The filter clause consists of the following entries:

Entry

Description

Functions

Use this tab to add functions to the filter.

The text field can contain a comma-separated list of functions or function group ids, triplets thereof, unquoted or double-quoted names of functions or function groups that describe functions passing the filter. All given names match all equally named functions/groups.

Press the three-dot-labeled button to open the Function Group Selection sub-dialog and choose the function names from the list.

Check the Add Function Id check box to write the name and Id of a selected function into the text field. This is useful to resolve ambiguities of function/group names: if only the name is written into the text field, all functions with this name pass the filter; if the name is replaced by an id, only the function with this id passes the filter, not other functions with the same name.

Processes

Use this tab to add processes to the filter.

The text field can contain a comma-separated list of process ids, process group ids, triplets thereof, unquoted or double-quoted thread, process or process group names that describe processes and threads in the functions passing the filter. All given names match all equally named processes/groups.

Press the three-dot-labeled button to choose processes from a list.

In the Process Group Selection sub-dialog, check the Add Process Id check box to write the process name and Id into the text field.

To add another filter clause, press the Add New Clause button. To remove an existing filter clause tab, use the Remove Current Clause button. Clauses are connected by a logical OR, while attributes from the same tab are connected by a logical AND.

Messages

To enable the filter clause tab in the Messages tab, select the Custom radio button. The filter clause tab has the following entries:

Entry

Description

Communicator

The text field can contain a comma-separated list of communicator ids, unquoted communicator names or communicator names in double quotes that pass the filter.

Press the three-dot-labeled button to choose from the list.

Tag

The text field can contain a comma-separated list of non-negative integers and triplets that describe tag values that pass the filter.

Processes

Makes a message pass the filter if either the sender or the receiver matches. Analogous to the logical OR of Sender and Receiver.

Sender

The text field can contain a comma-separated list of process ids, process group ids, triplets thereof, unquoted or double-quoted names of threads, processes or process groups that describe processes and threads in the message sender that make the message pass the filter. Given names match all equally named processes/groups.

Press the three-dot-labeled button to choose from the list.

Receiver

Analogous to Sender.

Ranks

Makes a message pass if either the sender or the receiver matches. Analogous to the logical OR of Rank of Sender and Rank of Receiver.

Ranks of Sender

The text field can contain a comma-separated list of nonnegative integers and triplets that describe sender ranks (in the MPI communicator) that can pass the filter.

Ranks of Receiver

Analogous to Rank of Sender.

Message Size

The text field can contain a comma-separated list of non-negative integers and triplets that describe message sizes (in bytes) that pass the filter.

Start Time

The text field can contain a comma-separated list of non-negative integers and triplets that describe start time (in ticks) of the message that makes the operation pass the filter.

Press the three-dot-labeled button to enter/edit the time in ticks or seconds (default depending on the View current time unit).

End Time

Analogous to Start Time.

Duration

The text field can contain a comma-separated list of non-negative integers and triplets that describe the duration (in ticks) of the message that makes the operation pass the filter.

Press the three-dot-labeled button to enter/edit the duration (shown as a time interval) in ticks or seconds (default depending on the View current time unit).

Collective Operations

To enable the filter clause tab in the Collective Operations tab, select the Custom radio button. The filter clause tab has the following entries:

Entry

Description

Communicator

The text field can contain a comma-separated list of communicator ids, unquoted communicator names or communicator names in double quotes that pass the filter.

Press the three-dot-labeled button to choose from the list.

Collective Operation

The text field can contain a comma-separated list of unquoted or double-quoted names of collective operations that pass the filter.

Press the three-dot-labeled button to choose from the list.

Processes

The text field can contain a comma-separated list of process ids, process group ids, triplets thereof, unquoted or double-quoted names of threads, processes or process groups that pass the filter. Given names match all equally named processes/groups.

Press the three-dot-labeled button to choose from the list.

Root

The text field can contain a comma-separated list of process ids, process group ids, triplets thereof, unquoted or double-quoted names of threads, processes or process groups that describe processes and threads serving as Root in the operation that passes the filter. Given names match all equally named processes/groups.

Press the three-dot-labeled button to choose from a list.

Rank of Root

The text field can contain a comma-separated list of non-negative integers and triplets that describe root ranks of the operation that passes the filter.

Transferred Volume

The text field can contain a comma-separated list of nonnegative integers and triplets that describe all volumes (in total bytes per operation) that make a collective operation pass the filter.

Start Time

The text field can contain a comma-separated list of non-negative integers and triplets that describe start time (in ticks) of the operation that passes the filter.

Press the three-dot-labeled button to enter/edit the time in ticks or seconds (default depending on the View current time unit).

End Time

Analogous to Start Time.

Duration

The text field can contain a comma-separated list of non-negative integers and triplets that describe the duration (in ticks) of the operation that passes the filter.

Press the three-dot-labeled button to enter/edit the duration (shown as a time interval) in ticks or seconds (default depending on the View current time unit).

For more complete information about compiler optimizations, see our Optimization Notice.