Intel® Inspector User Guide for Windows* OS

ID 767798
Date 7/13/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

Dialog Box: Create Suppression

To access this Intel Inspector dialog box: In the Code Locations pane, right-click a code location in a problem you want to suppress during future analysis runs. In the context menu, choose Suppress....

Use this dialog box to define a suppression rule to help you focus during future analysis runs on only those issues that require your attention.

TIP:

  • Although you are ultimately trying to suppress problems, the Intel Inspectorvehicle for defining a suppression rule is one or more code locations.

  • Narrow rules suppress a limited number of relevant problems; wider rules suppress a greater number of relevant problems.

  • Every rule applied during analysis adds processing time.

  • The goal: Suppress the greatest number of relevant problems with the fewest number of rules.

  • To review rules to be applied during analysis, check the Suppressions tab of the Project Properties dialog box.

  • To apply rules during analysis, select the Apply Suppressions radio button on the Target tab of the Project Properties dialog box.

  • A code location may be part of multiple problems; therefore, multiple rules may suppress the same code location, or a rule created to suppress one problem may partially impact another problem.

Use This

To Do This

Name text box

Add a short description to distinguish the new rule from other rules.

Save in drop-down list and Browse button

  • Save the new rule in the default location.

  • Save the new rule in another location.

TIP:

Choose a non-default location only to make the rule easily accessible to others.

Problem type drop-down list

  • Suppress problems during analysis by Problem type (keep specific Problem type). Outcome: Rules with narrower reach.

  • Do not suppress problems by Problem type (click drop-down arrow and choose *(any) ). Outcome: Rules with wider reach.

Code Location Description checkboxes

  • Suppress problems during analysis by a code location (select checkbox). Outcome: Rules with narrower reach.

  • Do not suppress problems by a code location (deselect checkbox). Outcome: Rules with wider reach.

TIP:

A single code location with all but one characteristic set to * (any) is ideal for widening a rule to suppress the greatest number of relevant problems.

Code Location Description drop-down lists

  • Suppress problems during analysis by Code Location Description (keep specific Code Location Description). Outcome: Rules with narrower reach.

  • Do not suppress problems by Code Location Description (click drop-down arrow and choose *(any) ). Outcome: Rules with wider reach.

NOTE:

There are three Code Location Description possibilities: Allocation site, Deallocation site, and * (any). Memory error example: If you right-click a Mismatched allocation site code location for an occurrence of a Mismatched allocation/deallocation problem, the Intel Inspector displays one code location marked Allocation site and one code location marked * (any); you can click the drop-down arrow to change Allocation site to * (any). Threading error example: If you right-click a Read code location for an occurrence of a Read/Write Data race problem, the Intel Inspector displays two code locations marked * (any) and does not provide drop-down arrows.

Number of Frames in Rule fields

Identify the current number of stack frames that are the focus of the rule.

Start Frame in Rule fields

Identify the last-called stack frame that is currently the focus of the rule.

Edit... buttons

  • Review stack frames for the code location.

  • Choose a different stack frame as the focus of the rule.

  • Choose multiple stack frames as the focus of the rule.

TIP:

  • Each additional frame in the stack narrows the reach of a rule.

  • Suppression rules are more robust if you specify a stack with multiple frames instead of frames with line numbers. (Because line numbers can be altered by code insertions or deletions, suppressions may be rendered ineffective by even minor code maintenance. Stack-based suppressions require larger code changes to invalidate them, such as changes to function call sequences.)

Create button

  • Create the new rule.

  • In the Problems and Code Locations panes, mark (strike through) all result data potentially impacted by the new rule.

NOTE:

It may take some time for all strikethroughs to appear.