Intel® Inspector is a dynamic memory and threading error checking tool for users developing serial and multithreaded applications on Windows* and Linux* operating systems. It is available as a standalone product as well as part of the:
  • Intel® Parallel Studio Professional Edition

  • Intel® Parallel Studio Cluster Edition

  • Intel® System Studio

If you do not already have access to the Intel Inspector, you can download an evaluation copy from http://software.intel.com/en-us/articles/intel-software-evaluation-center/.

Key Features

Intel Inspector offers:
  • Standalone GUI 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

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 settings.

  • 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.

  • For the Intel Inspector in the Intel Parallel Studio, 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 <inspector-install-dir>/inspxe-vars.sh

      The default installation path, <inspector-install-dir>:
      • For root users: /opt/intel/parallel_studio_xe_201n/inspector_xe_201n/

      • For non-root users: $HOME/intel/parallel_studio_xe_201n/inspector_xe_201n/

    • Add <inspector-install-dir>/bin32 or <inspector-install-dir>/bin64 to your path.

    • Run the <studio-install-dir>/psxevars.csh or <studio-install-dir>/psxevars.sh command. The default installation path, <studio-install-dir>:
      • For root users: /opt/intel/parallel_studio_xe_201n/

      • For non-root users: $HOME/intel/parallel_studio_xe_201n/

  • For the Intel Inspector in the Intel System Studio, 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 <inspector-install-dir>/inspxe-vars.sh

      The default installation path, <inspector-install-dir>:
      • For root users: /opt/intel/system_studio_201n/inspector_201n_for_systems/

      • For non-root users: $HOME/intel/system_studio_201n/inspector_201n for_systems/

    • Add <inspector-install-dir>/bin32 or <inspector-install-dir>/bin64 to your path.

For more information, see: Building Applications.

Get Started

Follow these steps to get started using the Intel Inspector.
Intel Inspector workflow

Launch the Intel Inspector

Run the inspxe-gui command.

For 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.

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.

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.

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.

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.

Summary window

For more information, see: Choosing Problems.

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

  • During analysis

  • After analysis is complete

Focus only on those issues that require your attention.

Severity levels

  • During analysis

  • After analysis is complete

States

After analysis is complete

Suppression rules

After analysis is complete

Resolve issues.

Direct access to a default editor

  • During analysis

  • After analysis is complete

Training and Documentation

Note:
For the Intel Inspector in the Intel Parallel Studio, the default installation path, <inspector-install-dir>:
  • For root users: /opt/intel/parallel_studio_xe_201n/inspector_xe_201n/

  • For non-root users: $HOME/intel/parallel_studio_xe_201n/inspector_xe_201n/

For the Intel Inspector in the Intel System Studio, the default installation path, <inspector-install-dir>:
  • For root users: /opt/intel/system_studio_201n/inspector_201n_for_systems/

  • For non-root users: $HOME/intel/system_studio_201n/inspector_201n_for_systems/

Document/Resources

Description

Online Training

Online training is an excellent resource for novice, intermediate, and advanced users. It includes links to videos, guides, featured topics, event recaps and archived webinars, upcoming events and webinars, and more.

Intel Inspector Tutorials

Show you how to find and fix uninitialized memory access, memory leak, and data race errors using C++ and Fortran sample applications.

This index of available tutorials is installed at <inspector-install-dir>/documentation/<locale>/tutorials/index.htm.

Check Intel Inspector Tutorials online for updates to tutorials.

Intel Inspector Release Notes

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.

This document is installed at <inspector-install-dir>/documentation/<locale>/<release_notes>.pdf.

Check Intel Inspector Release Notes online for updates to release notes.

Samples

Help you learn to use the Intel Inspector. Samples are installed as individual compressed files under <inspector-install-dir>/samples/en/. After you copy a sample application compressed file to a writable directory, use a suitable tool to extract the contents. Extracted contents include a short README (TXT format) that describes how to build the sample and fix issues.

This index of available samples is installed at <inspector-install-dir>/documentation/<locale>/samples_inspector.htm.

Check Intel Inspector Samples online for updates to samples.

Intel Inspector Help

The Help is the primary documentation for the Intel Inspector. It is accessible from the product Help menu.

This document is installed at <inspector-install-dir>/documentation/<locale>/help/index.htm

Check Intel Inspector Help online for updates to Help.

Note:

If successive calls to Intel InspectorHelp result in multiple browser windows appearing instead of new tabs in the existing browser window, try changing your default browser.

More Resources

Intel Inspector Glossary

Intel® Learning Lab (white papers, articles and more)

Intel® Software Documentation Library