Intel® Inspector User Guide for Linux* OS

ID 767796
Date 10/31/2024
Public
Document Table of Contents

knob

Specify additional settings for a collect or collect-with action.

Syntax

-knob <knob-name>=<knob-value>

-k <knob-name>=<knob-value>

Arguments

Available knobs and values are dependent on the specified analysis type. For a complete list, use the knob-list action.

<knob-name>

Description

analyze-stack=true | false

Default: false

Analyze invalid and uninitialized accesses to thread stacks. Enabling this setting is useful when:

  • You want as thorough an analysis as possible.

  • An application calls alloca().

High cost.

Recommendation:

  • Enable the first time you analyze an application and periodically thereafter.

  • Enable to analyze automatic variables.

Supported analysis: mi3

detect-invalid-accesses=true | false

Default: true

Detect problems where an instruction reads or writes an uninitialized or invalid memory location. Enabling this setting is useful when an application:

  • Exhibits unexpected behavior.

  • Shows evidence of uninitialized values in computations.

    High cost.

Recommendation: Enable.

Supported analysis: mi2, mi3

detect-leaks-on-exit=true | false

Default: true

Enable this setting to report typical memory leaks in which the application allocates a memory block, never releases it, and doesn’t keep a pointer to the block (e.g. unreachable memory blocks). Enabling is useful when an application:

  • Runs out of memory.

  • Appears to be using more memory than expected.

Extremely low cost - especially if used only with the Remove duplicates checkbox selected.

Recommendation: Enable.

Supported analysis: mi1, mi2, mi3

detect-resource-leaks=true | false

Default: true

Enable this setting to detect open kernel and GDI handles when the application ends. For example, the application may open a file, get its handle, but never close or release that handle until it stops running. On Windows, GDI resources are limited, and the application may experience some drawing issues if it uses more than ~10,000 of these types of handles at once (pen, bitmap, brush, etc.).

Enabling is useful when analyzing Windows* GUI applications.

Low cost.

Recommendation: Enable the first time you analyze an application and periodically thereafter.

Supported analysis: mi1, mi2, mi3

enable-memory-growth-detection=true | false

Default: true

Set to true to enable buttons in the GUI that let you send commands during application execution. This will show you a list of reachable and unreachable memory blocks for a time segment.

Enabling is useful for modeling memory usage patterns and ensuring a transactional application deallocates all memory allocations after a transaction completes. (Use in conjunction with the Reset Leak/Growth Detection button and Show Leaks/Growth Now button during analysis.) Low cost.

Supported analysis: mi1, mi2, mi3

Actions Modified

collect, collect-with

Description

Use the knob action-option when you want to specify an additional setting for a collect or collect-with action. For a full list of available knobs, use the knob-list action.

Example

This command uses the collect-with action to perform memory error analysis using the detect-memory-leaks knob on myApp.

inspxe-cl -collect-with runmc -knob detect-memory-leaks true -- myApp