intel Inspector Get Dynamic Memory and Threading Error Checking Tool User Guide

June 9, 2024
Intel

intel Inspector Get Dynamic Memory and Threading Error Checking Tool
intel Logo

Get Started with Intel® Inspector

Intel® Inspector is a dynamic memory and threading error checking tool for users developing serial and multithreaded applications on Windows and Linux operating systems.
This document summarizes the typical workflow to get started using the Intel Inspector GUI.

Key Features

Intel Inspector offers:

  • Standalone GUI, Microsoft Visual Studio* plug-in, and command line operational environments.
  • Preset analysis configurations (with some configurable settings), as well as the ability to create custom analysis configurations to help you control analysis scope and cost.
  • Visibility into individual problems, problem occurrences, and call stack information, with problem prioritization and filtering by inclusion and exclusion to help you focus on items that require your attention.
  • Problem suppressions support to help you focus on only those issues that require your attention, including the ability to:
  • Create suppression rules based on stacks
  • Convert third-party suppression files to the Intel Inspector suppression file format
  • Create and edit suppression files in a text editor
  • Interactive debugging capability so you can investigate problems more deeply during analysis
  • Persistent, propagated problem state information to help you avoid investigating issues over and over again
  • A wealth of reported memory errors, including on-demand memory leak detection
  • Memory growth measurement to help ensure your application uses no more memory than expected
  • Data race, deadlock, lock hierarchy violation, and cross-thread stack access error detection, including error detection on the stack
  • Intel® Software Manager to download and install Intel software updates, manage subscription status of installed software, activate serial numbers, and discover the latest news about Intel software (Windows* OS only)

Intel Inspector is available as astandalone installation and as part of the following products:

Notices and Disclaimers

Intel technologies may require enabled hardware, software or service activation.
No product or component can be absolutely secure.
Your costs and results may vary.
© Intel Corporation. Intel, the Intel logo, and other Intel marks are trademarks of Intel Corporation or its subsidiaries. Other names and brands may be claimed as the property of others.
Microsoft, Windows, and the Windows logo are trademarks, or registered trademarks of Microsoft Corporation in the United States and/or other countries.
No license (express or implied, by estoppel or otherwise) to any intellectual property rights is granted by this document.
The products described may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request.

Intel disclaims all express and implied warranties, including without limitation, the implied warranties of merchantability, fitness for a particular purpose, and non-infringement, as well as any warranty arising from course of performance, course of dealing, or usage in trade.

Get Started with Intel® Inspector-Windows* OS

Intel® Inspector is a dynamic memory and threading error checking tool for users developing serial and multithreaded applications on Windows and Linux operating systems. This topic is part of a Getting Started document that summarizes an end-to-end workflow you can apply to your applications.

Prerequisites

You can use the Intel Inspector to analyze memory and threading errors in both debug and release modes of C++ and Fortran binaries. To build applications that produce the most accurate and complete Intel Inspector analysis results:

Build your application in debug mode.

  • Use optimal compiler/linker settings. For more information, see Building Applications in Intel Inspector Help.
  • Ensure your application creates more than one thread before you run threading analyses. In addition:
  • Verify your application runs outside the Intel Inspector environment.
  • Run the < inspector-install-dir>\inspxe-vars.bat command. .
    The default installation path, < inspector-install-dir>, is below C:\Program Files (x86)\Intel
    \oneAPI\ inspector (on certain systems, instead of Program Files (x86), the directory name is Program Files ).

NOTE Setting up your environment is necessary only if you plan to use the inspxe-gui command to
launch the Intel Inspector standalone GUI interface or the inspxe-cl command to run the command line interface.

For more information, see Building Applications in Intel Inspector Help.

Get Started

Follow these steps to get started using the Intel Inspector.

Launch the Intel Inspector
To launch the:

  • Intel Inspector standalone GUI: Run the inspxe-gui command or from the Microsoft Windows* All App s screen, select Intel Inspector [version ].
  • Intel Inspector plug-in to the Visual Studio IDE: Open your solution in the Visual Studio IDE and click the    icon.
    To launch the command line interface: Run the inspxe-cl command. (To get help, append -help to the command line.)

Choose/Create Project
Intel Inspector is based on a project paradigm and requires that you create or open a project to enable analysis features.
Think of an analysis project as a:

  • Compiled application
  • Collection of configurable attributes, including suppression rules and search directories
  • Container for analysis results
    For more information, see Choosing Projects in Intel Inspector Help.

Configure Project
Data set size and workload have a direct impact on application execution time and analysis speed.
For best results, choose small, representative data sets that create threads with minimal to moderate work per thread.
Your objective: In as short a runtime period as possible, execute as many paths and the maximum number of tasks (parallel activities) as you can afford, while minimizing the redundant computation within each task to the bare minimum needed for good code coverage.
Data sets that run a few seconds are ideal. Create additional data sets to ensure all your code is inspected.
For more information, see Configuring Projects in Intel Inspector Help.

Configure Analysis
Intel Inspector offers a range of preset memory and threading analysis types (as well as custom analysis types) to help you control analysis scope and cost. The narrower the scope, the lighter the load on the system. The wider the scope, the larger the load on the system.

Tip
Use analysis types iteratively. Start with a narrow scope to verify your application is set up correctly and set expectations for analysis duration. Widen the scope only if you need more answers and you can tolerate the increased cost.

For more information, see Configuring Analyses in Intel Inspector Help.
Run Analysis

When you run an analysis, the Intel Inspector:

  • Executes your application.
  • Identifies issues that may need handling.
  • Collects those issues in a result.
  • Converts symbol information into filenames and line numbers.
  • Applies suppression rules.
  • Performs duplicate elimination.
  • Forms problem sets.
  • Depending on your analysis configuration options, may launch an interactive debugging session. For more information, see Running Analyses in Intel Inspector Help.

Choose Problems
During analysis, the Intel Inspector displays problems in the order detected. After analysis is complete, the Intel Inspector:

  • Groups detected problems into problem sets (but still provides visibility into individual problems and problem occurrences).
  • Prioritizes the problem sets.
  • Offers filtering to help you focus on those problem sets that require your attention.

Skip to main contentSkip to toolbar About WordPress Manuals+ 30,21030,210
Comments in moderation New View Post Howdy, tahir Log Out Screen OptionsHelp
Edit Post Add New Add title intel Inspector Get Dynamic Memory and Threading
Error Checking Tool User Guide Permalink: https://manuals.plus/intel
/inspector-get-dy…king-tool-manual ‎Edit Add MediaAdd PDF Add
GiveawayVisualText Paragraph P Word count: 671 Draft saved at 4:54:31 am. Last
edited on March 25, 2023 at 12:56 pm Move upMove downToggle panel: Tags Add
New Tag Separate tags with commas Remove term: Checking Tool Checking
ToolRemove term: Dynamic Memory and Threading Error Checking Tool Dynamic
Memory and Threading Error Checking ToolRemove term: Error Checking Tool Error
Checking ToolRemove term: Inspector Get Inspector GetRemove term: Inspector
Get Dynamic Memory and Threading Error Checking Tool Inspector Get Dynamic
Memory and Threading Error Checking ToolRemove term: Intel IntelRemove term:
Threading Error Checking Tool Threading Error Checking Tool Choose from the
most used tags Move upMove downToggle panel: Featured image Set featured image
Move upMove downToggle panel: Editor Switch to block editor Move upMove
downToggle panel: Publish Preview Changes\(opens in a new tab\) Status:
Published EditEdit status Visibility: Public EditEdit visibility Published on:
Mar 25, 2023 at 12:56 EditEdit date and time SEO: Not available Readability:
OK Thank you for creating with WordPress.Version 6.1.1 Close dialog Add media
Actions Upload filesMedia Library Filter mediaFilter by type Uploaded to this
post Filter by date All dates Search Media list Showing 6 of 6 media items
ATTACHMENT DETAILS intel-Inspector-Get-Dynamic-Memory-and-Threading-Error-
Checking-Tool-User-Guide-1.png March 26, 2023 173 KB 541 by 474 pixels Edit
Image Delete permanently Alt Text Learn how to describe the purpose of the
image\(opens in a new tab\). Leave empty if the image is purely
decorative.Title intel Inspector Get Dynamic Memory and Threading Error
Checking Tool User Guide \(1\) Caption Description File URL:
https://manuals.plus/wp-content/uploads/2023/03/intel-Inspector-Get-Dynamic-
Memory-and-Threading-Error-Checking-Tool-User-Guide-1.png Copy URL to
clipboard ATTACHMENT DISPLAY SETTINGS Alignment None Link To None Size Full
Size – 541 × 474 Selected media actions 1 item selected Clear Insert into
post

For more information, see Choosing Problems in Intel Inspector Help.
Interpret Result Data and Resolve Issues
Use the following Intel Inspector features to enhance your productivity:

Interpret result data.| Explain Problem Help

For more information, see Accessing Explain Problem Help in Intel Inspector Help.

|

  • During analysis
  • After analysis is complete

---|---|---
Focus only on those issues that require your attention.| Severity Levels For more information, see Severity Levels in Intel Inspector Help.|

  • During analysis
  • After analysis is complete

States| After analysis is complete
For more information, see States in Intel Inspector Help.
Suppression rules| After analysis is complete
For more information, see Suppressions Support in Intel Inspector Help.
Resolve issues.| Direct access to a default editor For more information, see Editing Source Code in Intel Inspector Help.|

  • During analysis
  • After analysis is complete
Learn More
Document/Resource Description

Intel Inspector: Featured Documentation| An excellent overall resource for novice, intermediate, and advanced users, this page includes links to guides, release notes, videos, featured topics, training samples, and more.
Intel Inspector Release Notes and New Features| Contain up-to-date information about the Intel Inspector, including a description, technical support, and known limitations. This document also contains system requirements, installation instructions, and instructions for setting up the command line environment.
Tutorials| Help you learn to use the Intel Inspector. After you copy a training sample compressed file to a writable directory, use a suitable tool to extract the contents. To load a training sample into the Visual Studio* environment, doubleclickthe.sln file.

Training samples help you learn to use the Intel Inspector. Training samples are installed as individual compressed files under \samples\en\. After you copy a training sample compressed file to a writable

directory, use a suitable tool to extract the contents. Extracted contents include a short README that describes how to build the training sample and fix issues.

To load a training sample into the Visual Studio* environment, double-click the .sln file.

Tutorials show you how to find and fix uninitialized memory access, memory leak, and data race errors using C++ and Fortran training samples.

Intel Inspector User Guide| The User Guide is the primary documentation for the Intel Inspector.
More Resources| Intel Inspector: Home
Intel Inspector Glossary
Explore Our Documentation

Get Started with Intel® Inspector-Linux* OS

Intel® Inspector is a dynamic memory and threading error checking tool for users developing serial and multithreaded applications on Windows and Linux operating systems. This topic is part of a Getting Started document that summarizes an end-to-end workflow you can apply to your applications.

Prerequisites

You can use the Intel Inspector to analyze memory and threading errors in both debug and release modes of C++ and Fortran binaries. To build applications that produce the most accurate and complete Intel Inspector analysis results:

  • Build your application in debug mode.

  • Use optimal compiler/linker settings. For more information, see Building Applications in Intel Inspector Help.

  • Ensure your application creates more than one thread before you run threading analyses. In addition:

  • Verify your application runs outside the Intel Inspector environment.

  • Ensure you set the EDITOR or VISUAL environment variable to your text editor.

  • Do one of the following to set up your environment:

  • Run one of the following source commands:

  • For csh/tcsh users: source < inspector-install-dir>/inspxe-vars.csh

  • For bash users: source /inspxe-vars.sh

  • The name of this script for the application as part of an Intel® oneAPI HPC Toolkit or Intel® oneAPI IoT Toolkit installation is env\vars instead of inspxe-vars.
    The default installation path, < inspector-install-dir>, is below:

  • /opt/intel/oneapi/inspector for root users

  • $HOME/intel/oneapi/inspector for non-root users

  • Add < inspector-install-dir>/bin32 or < inspector-install-dir>/bin64 to your path.
    For more information, see Building Applications in Intel Inspector Help.

Get Started

Follow these steps to get started using the Intel Inspector

Get Started with Intel® Inspector-Linux* OS

Launch the Intel Inspector
To launch the Intel Inspector standalone GUI, run the inspxe-gui command.

To launch the command line interface: Run the inspxe-cl command. (To get help, append -help to the
command line.)
Choose/Create Project Intel Inspector is based on a project paradigm and requires that you create or open a project to enable analysis features.
Think of an analysis project as a:

  • Compiled application
  • Collection of configurable attributes, including suppression rules and search directories
  • Container for analysis results For more information, see Choosing Projects in Intel Inspector Help.

Configure Project
Data set size and workload have a direct impact on application execution time and analysis speed.
For best results, choose small, representative data sets that create threads with minimal to moderate work per thread.
Your objective: In as short a runtime period as possible, execute as many paths and the maximum number of tasks (parallel activities) as you can afford, while minimizing the redundant computation within each task to the bare minimum needed for good code coverage.
Data sets that run a few seconds are ideal. Create additional data sets to ensure all your code is inspected.
For more information, see Configuring Projects in Intel Inspector Help.

Configure Analysis
Intel Inspector offers a range of preset memory and threading analysis types (as well as custom analysis types) to help you control analysis scope and cost. The narrower the scope, the lighter the load on the system. The wider the scope, the larger the load on the system.

Tip
Use analysis types iteratively. Start with a narrow scope to verify your application is set up correctly
and set expectations for analysis duration. Widen the scope only if you need more answers and you can tolerate the increased cost.

For more information, see Configuring Analyses in Intel Inspector Help.
Run Analysis
When you run an analysis, the Intel Inspector:

  • Executes your application.

  • Identifies issues that may need handling.

  • Collects those issues in a result.

  • Converts symbol information into filenames and line numbers.

  • Applies suppression rules.

  • Performs duplicate elimination.

  • Forms problem sets.

  • Depending on your analysis configuration options, may launch an interactive debugging session.
    For more information, see Running Analyses in Intel Inspector Help.
    Choose Problems During analysis, the Intel Inspector displays problems in the order detected. After analysis is complete, the Intel Inspector:

  • Groups detected problems into problem sets (but still provides visibility into individual problems and problem occurrences).

  • Prioritizes the problem sets.

  • Offers filtering to help you focus on those problem sets that require your attention
    Get Started with Intel® Inspector-Linux* OS

For more information, see Choosing Problems in Intel Inspector Help.
Interpret Result Data and Resolve Issues
Use the following Intel Inspector features to enhance your productivity:

Objective Feature During Analysis/After Analysis Is Complete
Interpret result data. Explain Problem Help

For more information, see Accessing Explain Problem Help in Intel Inspector Help.

|

  •  During analysis
  • After analysis is complete

Focus only on those issues that require your attention.| Severity Levels For more information, see Severity Levels in Intel Inspector Help.|

  • During analysis
  • After analysis is complete

States| After analysis is complete
For more information, see States in Intel Inspector Help.
Suppression rules| After analysis is complete
For more information, see Suppressions Support in Intel Inspector Help.
Resolve issues.| Direct access to a default editor For more information, see Editing Source Code in Intel Inspector Help.|

  • During analysis
  • After analysis is complete

Learn More

Document/Resource Description

Intel Inspector: Featured Documentation| An excellent overall resource for novice, intermediate, and advanced users, this page includes links to guides, release notes, videos, featured topics, training samples, and more
Intel Inspector Release Notes and New Features| Contain up-to-date information about the Intel Inspector, including a description, technical support, and known limitations. This document also contains system requirements, installation instructions, and instructions for setting up the command line environment.

Tutorials| Help you learn to use the Intel Inspector. After you copy a training sample compressed file to a writable directory, use a suitable tool to extract the contents. To load a training sample into the Visual Studio* environment, double- click the .sln file.

Training samples help you learn to use the Intel Inspector. Training samples are installed as individual compressed files under / samples/en/. After you copy a training sample compressed file to a writable directory, use a suitable tool to extract the contents. Extracted contents include a short README that describes how to build the training sample and fix issues.

Tutorials show you how to find and fix uninitialized memory access, memory leak, and data race errors using C++ and Fortran training samples.

Intel Inspector User Guide| The User Guide is the primary documentation for the Intel Inspector.
| Intel Inspector: Home

Explore Our Documentation

intel Logo

References

Read User Manual Online (PDF format)

Read User Manual Online (PDF format)  >>

Download This Manual (PDF format)

Download this manual  >>

Related Manuals