User Guide

  • 2020
  • 10/21/2020
  • Public Content
Contents

Examining Result Data During Analysis

You can start managing the
Intel Inspector
analysis results before analysis (collection and finalization) is complete; however, some features are not available until after analysis is complete, such as:
  • Problem sets
    - During analysis, the
    Intel Inspector
    displays detected problems in the order detected.
    Intel Inspector
    does not group problems into problem sets or prioritize problem sets into a to-do list until after analysis is complete.
  • States
    - You cannot determine if an issue in the new result corresponds to an issue in a project baseline result until after analysis is complete.
  • Filters
    - You cannot temporarily limit the items in the
    Problems
    pane until after analysis is complete.
You also have the following options while the
Intel Inspector
performs an analysis:

About On-demand Memory Leak Detection

A
Memory leak
problem occurs when a block of memory is allocated, never deallocated, and not reachable (there is no pointer available to deallocate the block). As a result, the block of memory cannot be:
  • Used by the application (because the application has no reference to it)
  • Freed (again because the application has no reference to it to pass to the free routine)
An application that leaks enough memory may run out of address space and fail, or cause the system to run out of swap space, resulting in system-wide instability or performance issues.
Intel Inspector
customarily displays memory leaks at the end of an analysis run when an application exits; however, you can also use the
Intel Inspector
on-demand memory leak detection feature to gather memory leak information while an application is running. This is useful if:
  • An application does not terminate (such as a server process).
  • You want memory leak information, but you do not want to wait for an application to terminate.
  • You want to determine if memory is leaked during a specific interval of application execution, or during a specific user action.
  • You want to discard information about allocations performed during initialization as a way of filtering out allocations that are not currently of interest.
For more precision, consider using the GUI-based on-demand memory leak detection functions in tandem with APIs for custom memory allocation.

About Memory Growth Detection

A
Memory growth
problem occurs when a block of memory is allocated, but not deallocated, within a specific time segment during application execution.
Intel Inspector
can measure memory growth to help you ensure an application uses no more memory than expected. This includes:
  • Memory an application has allocated and still needs for future calculations
  • Memory an application has allocated and no longer needs, but has not deallocated
  • Memory an application has allocated and then leaked
For more precision, consider using the GUI-based memory growth detection functions in tandem with APIs for custom memory allocation.
Parent topic:
Collecting Results

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