User Guide

  • 2020
  • 05/04/2020
  • Public Content
Contents

Working with Suppressions from the Command Line

Suppression files - files containing suppression rules - can be created and applied using the
Intel Inspector
inspxe-cl
command tool, or using
Intel Inspector
GUI tools. When analysis is performed on the command line, the ability to apply suppressions is automatically enabled regardless of project or result settings.
A suppression file is a collection of suppression rules for problems identified during analysis that you want excluded from future analysis results. For example, these problems could be in code that is not your responsibility, in third-party libraries, or false positives. When a suppression file is used during a subsequent analysis run, suppressed problems are ignored so that you can focus on unsuppressed and newly detected problems.
From the command line, you can create a suppress-all file to suppress all detected problems that remain in a specified result. When the code has changed and there are new problems that you want to suppress, you can create additional suppression files through the command line for these new unfixed problems. To create or delete individual suppression rules from a suppression file, you can use the
Intel Inspector
GUI tools. To edit suppression rules, you can use a text editor.
Suppression files can be used along with other problem-suppression tactics, such as assigning a problem the
Not a Problem
state, then filtering out all problems with this state when viewing problems in the GUI or generating a report on the command line. You can also propagate this state assignment forward into other results using one of the following techniques:
  • To merge problem state assignments from one existing result to another, use the
    merge-states
    option. State assignments from the merge-from result are used to update state assignments in the merge-to result. Problem states in the merge-to result are edited according to a set of rules.
  • To propagate problem state assignments forward when performing analysis, finalization or generating a report, use the
    baseline-result
    option.

Limitations of Suppression Rules

Intel Inspector
suppression rules generally remain effective for edited source code, but when lines of code are changed within a function where a problem is marked, the problem may not be recognized the next time the suppression file is used.
This is because
Intel Inspector
identifies a problem based on source code lines relative to the start of a function, rather than absolute line number values. This makes it easier to track problems marked for suppression as lines of code are inserted and deleted in source files. However, adding or deleting lines within a function, prior to the location of a suppressed problem, can cause a problem to no longer match the suppression rule. In these cases, the problem is designated as a new problem in the subsequent analysis. If Inspector did not do this, suppressions would fail any time a line of code is added or removed.

Tips for Working with Suppression Files

  • Suppression rules are based on results for a particular analysis type, so the same general category of analysis must be used to generate a suppression file and when using it in subsequent analysis runs. For example, you would use one set of suppression files for threading error analysis, and a different set for memory error analysis.
  • Put all suppression files created for a specific type of analysis in a single, standard suppressions directory. This allows you to apply all the suppression files in this directory simply by specifying the directory path.
    To make it easy to switch between the GUI and the command line, store suppression files in the standard suppressions directory:
    ./My Inspector Results-[project name]/suppressions
    .
  • If your suppression files are not in a single directory, option files provide an easy way to pass in a series of suppression file paths to a
    -collect
    or
    -collect-with
    action.
  • You may use the same suppression file for multiple analysis runs, and may create and apply additional suppression files as needed.
  • Each suppression rule has some overhead associated with it, so it can be worthwhile to edit the suppression file and combine multiple related rules.
  • Conversion of third-party suppression files can only be performed through the command line.
  • Suppressions can also be applied when generating a report.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804