The Collective Operations Profile enables analyzing communication patterns that are done using MPI Collective Operations. Like the Message Profile (see Section 4.6), the Collective Operations are also represented in a color-coded matrix format. The default matrix shows the type of the Collective Operation as the row label and the process as the column label.
The precision of the values shown can be adjusted as explained in Section 4.6.
When the mouse is positioned over any point in the matrix then detailed information for the current cell is shown in the View's status bar in the form "$AttributeValue ($RowLabel, $ColumnLabel) ". This allows getting exact attribute values even if the cells are configured to be very small or to show no alphanumerical entries at all.
The Collective Operations Settings adjusts the various attributes that affect how the Chart is displayed. This includes the colors, the layout and the statistical attributes. The Settings dialog box is divided into three tabs namely the Preferences tab, the Colors tab and the Data tab.
The Preferences Tab
The Preferences tab adjusts the Display settings and the Layout settings.
Display Group: In this group, the visual aspects of the Chart is configured. Using the check boxes Row Labels and Column Labels, it is decided if the row/column headers should be displayed or not. The check box Scale, if enabled, displays the colored scale that is seen on the right-hand side of the matrix. The Grid checkbox displays/removes the black grid in which the cells are placed. The checkbox Keep Empty Rows/Columns when using Sender/Receiver Groupings switches a special feature that is only relevant for the Groupings Sender and Receiver. For these groupings, a checked state of this box indicates that all processes should always be shown, like for example, showing even empty rows and columns. That keeps the form of the matrix constant and makes it easy to look for patterns in the data. An unchecked state means that empty rows and columns even for these groupings are suppressed. All other groupings suppress empty rows and columns to save screen space regardless of the state of this check box.
The radio buttons Communicator Names and Communicator Ids allow to either see helpful communicator names (if available in the trace file) that may take a lot of valuable screen space or to restrict the display to show only concise communicator ids.
Layout Group: The Layout group allows switching between two fundamentally different modes for the layout of the matrix. In the Automatic Cell Sizes mode, checking Equal Cell Sizes basically results in equal column widths and enables the check box Square Cell Sizes to get square cells. The other options of the Layout group are disabled by default.
Choosing Manual Cell Sizes allows specifying the size of the cells in pixels. This is done either in the Cell Size group at the bottom of the tab or by sizing the cells manually with the slider that is available on top of the matrix as soon as this setting is applied. In this mode, the alphanumerical data in the cells is displayed only if it fits. Otherwise, it is switched off entirely by un-checking the check box Text in Cells.
The Colors Tab
The push buttons Maximum Color and Minimum Color allow choosing the colors for the maximum and minimum attribute values. The text input field allows specifying the number of color steps (1-255).
The chosen colors are considered as points in a color space and the colors of the scale are interpolated on a line through color space connecting these two points. The combo box to the right of the text input field allows using either the HSV or the RGB color space. HSV is fancier and colorful, but RGB is often more useful and readable. For monochrome printing, it is advisable to choose a very light and a very dark color. Choosing white for the minimum and black for the maximum is not at all bad.
By checking the box Manual Scaling it is possible to specify the minimum and maximum values for the color scale in the two text input fields below.
The Data Tab
The Data tab allows choosing how the data is analyzed. The Data tab is divided into the grouping section, the Datum section, the Row Statistics and the Column Statistics.
Grouping Section: The Grouping section provides two combo boxes to choose the row and column headers or better said to choose how the data is grouped into categories. The groupings for rows and columns is chosen independently. However not all combinations are possible. It cannot have the same header for row and column. For example, a matrix cannot be plotted with both the row and column header being Communicator. All the headers are explained below:
Communicator: Categorizes the messages by the MPI communicator. The labels are either communicator ids or names. Names are displayed if they are available in the trace file and if they are chosen in the Preferences tab (see above) of the Settings dialog box.
Collective Operation: This shows the types of operations like MPI_Allreduce and MPI_Bcast.
Root: Shows the root used in the operation, if applicable. If there is no root, a label No Root is created.
Process: Categorizes the operations by the processes.
Datum Section: The Datum group allows choosing which attribute should be printed or painted in the cells. The available attributes are:
Total Time: The total time spent in operations, accumulated over all operations and all processes referred in this cell. For a single process and a single operation this is the time spent in the call to the operation. For cells referring to a process group this is the sum of the times all contained processes did spent in the operation. For many operations it is the sum over the times spent in each single operation. The unit can either be seconds [s] or ticks[tick] depending on the View setting.
Minimum Time: The minimum time spent in an operation, minimized over all operations and all processes that fall into this cell ([s] or [tick]).
Maximum Time: The maximum time spent in an operation, maximized over all operations and all processes that fall into this cell ([s] or [tick]).
Total Volume Sent: The total data volume that has been sent from all operations in this cell [bytes].
Minimum Volume Sent: The minimum amount of data volume that has been sent by an operation in this cell [bytes].
Maximum Volume Sent: The maximum amount of data volume that has been sent by an operation in this cell [bytes].
Total Volume Received: The total data volume that has been received by all operations in this cell [bytes].
Minimum Volume Received: The minimum amount of data volume that has been sent by an operation in this cell [bytes].
Maximum Volume Received: The maximum amount of data volume that has been received by an operation in this cell [bytes].
Total Data Volume: The total data volume, accumulated over all operations in this cell.
Count: The number of operations in this cell.
Row Statistics: Row Statistics specifies whether the statistical values like the sum, the mean or the standard deviation should be displayed for the rows. Similarly, Column Statistics give the above mentioned statistical values for the given columns.
The context menu in the Collective Operations Profile mainly consists of the following entries:
Attribute to show
The attributes to be shown in the Collective Operations Profile is selected in this option. It contains all the attributes that are explained in the Datum Section.
Columns to show
This entry indicates if the Collective Operations Profile should be displayed by process, by root or by communicator.
Rows to show
This entry denotes whether the rows of the profile show the Collective Operation, the communicator or the root values.
The entry sort enables sorting rows by the values of the column clicked on, or to sort columns by the values in a row clicked on and to switch back to the default order. Switching back to the default order is also useful if the columns or rows were rearranged by dragging the row or column headers around (hold the Ctrl key down while dragging).
Zoom to selection
Use this entry to focus on a particular region in the matrix. To do this, select the required region with the mouse as shown in Figure 4-43 and choose the entry Zoom to selection from the context menu (obtained by a right-click on the mouse). As a result, everything else other than the selected region, is removed from the display.
This hides all cells that are selected. Selection of cells is done by holding down the left mouse button and moving over the required region. This also automatically opens the context menu.
This entry shows all cells again. It is enabled only if cells have been previously hidden using the Hide entry.
This entry opens a File Save dialog box to select a file to store textual data in. This includes all data cells that contain at least one message, even if they are currently hidden. For each cell, all available attributes are given. It does not contain row or column statistics.
Collective Operations Settings Profile
This opens the Settings dialog box of the Collective Operations Profile.