Difference between revisions of "GPU621/Code"

From CDOT Wiki
Jump to: navigation, search
(Intel Inspector)
(Added more for Intel Inspector)
Line 54: Line 54:
 
Intel Inspector comes with Intel Parallel Studio XE along with two other debugging tools - VTune and Advisor.
 
Intel Inspector comes with Intel Parallel Studio XE along with two other debugging tools - VTune and Advisor.
  
'''Create a project'''
+
==='''Create a project'''===
 
There are 2 ways to work with inspector.  
 
There are 2 ways to work with inspector.  
  
 
* Run inspector directly from Visual Studio  
 
* Run inspector directly from Visual Studio  
 +
 +
This is the '''easiest and fastest''' way that requires no additional configurations.
 +
 
[[File:Inspector VS.PNG]]
 
[[File:Inspector VS.PNG]]
  
This is the easiest and fastest way that requires no additional configurations.
+
 
 
* Run as a separate program.
 
* Run as a separate program.
 
Working with Intel Inspector application requires passing it a compiled version of your program.
 
Working with Intel Inspector application requires passing it a compiled version of your program.
 
Additionally you may need to link some libraries (lib, dll, etc).
 
Additionally you may need to link some libraries (lib, dll, etc).
  
'''Configure a project'''
+
[[File:Inspector_app.PNG]]
 +
 
 +
 
 +
==='''Configure a project'''===
 
Intel suggests using small data set sizes and load threads with small chunks of work..
 
Intel suggests using small data set sizes and load threads with small chunks of work..
  
Line 71: Line 77:
  
  
'''Choose analysis type'''
+
==='''Choose analysis type'''===
 
Inspector allows you to choose between predefined types of analysis.
 
Inspector allows you to choose between predefined types of analysis.
  
 
[[File:Inspector_01_init_window.PNG]]
 
[[File:Inspector_01_init_window.PNG]]
  
* Memory error analysis
+
* '''''Memory error analysis'''''
 +
** Detect leaks
 +
** Detect Memory problems
 +
** Locate memory problems
  
* Threading error analysis
+
 
 +
* '''''Threading error analysis'''''
 
** Detect deadlocks
 
** Detect deadlocks
 
** Detect deadlocks and data races
 
** Detect deadlocks and data races
 
** Locate deadlocks and data races
 
** Locate deadlocks and data races
  
* Custom analysis types - users can create their own types based on selected preset type.
+
 
 +
* '''''Custom analysis types''''' - users can create their own types based on selected preset type.
 +
 
 +
 
 +
==='''How it works'''===
 +
 
 +
Inspector performs the analysis in multiple steps:
 +
 
 +
1. The program is executed
 +
 
 +
2. It identifies problems that may need to be resolved.
 +
 
 +
3. Gathers problems.
 +
 
 +
4. Converts symbol information into filenames and line numbers.
 +
 
 +
5. Applies suppression rules.
 +
 
 +
6. Removes duplicates.
 +
 
 +
7. Creates problem sets.
 +
 
 +
8. Opens a debugging session.
  
 
=Intel VTune™ Amplifier=
 
=Intel VTune™ Amplifier=

Revision as of 12:31, 23 November 2018

Debugging Threads in Intel Parallel Studio

Group Members

  1. Corey James
  2. Guozhao Liang
  3. Oleksii Kozachenko
  4. eMail All

Intel® Parallel Studio XE

Intel Parallel Studio XE is a software development tool suite for compiling applications and optimizing performance with less effort.

The Intel C++ Compiler is not the only tool that comes with IPS XE 2019. It also includes next applications:

File:XEVTuneLogo.jpg

  • Intel® Advisor
  • Intel® Inspector
  • Intel® VTune™ Amplifier

Let's take a quick look at each of them:

Intel® Advisor

Vectorization optimization and thread prototyping.

Use this tool in the vectorization and threading stages of the flow.

Intel® Inspector

File:XEInspectorLogo.jpg

Memory and thread debugger.

Use this tool to find races, deadlocks, and illegal memory accesses.

  • Locate root cause errors early―before you release
  • Quickly debug intermittent races and deadlocks

Intel® VTune™ Amplifier

Performance profiler.

Use this tool in the threading and bandwidth optimization stages and for advanced vectorization optimization.

  • Save money: Locate root cause errors early―before you release
  • Save time: Quickly debug intermittent races and deadlocks


Intel Inspector

Intel Inspector is a dynamic memory and threading error checking instrument to inspect serial and multi-threaded programs.

Intel Inspector comes with Intel Parallel Studio XE along with two other debugging tools - VTune and Advisor.

Create a project

There are 2 ways to work with inspector.

  • Run inspector directly from Visual Studio

This is the easiest and fastest way that requires no additional configurations.

Inspector VS.PNG


  • Run as a separate program.

Working with Intel Inspector application requires passing it a compiled version of your program. Additionally you may need to link some libraries (lib, dll, etc).

Inspector app.PNG


Configure a project

Intel suggests using small data set sizes and load threads with small chunks of work..

This will reduce run time and the speed of the analysis.


Choose analysis type

Inspector allows you to choose between predefined types of analysis.

Inspector 01 init window.PNG

  • Memory error analysis
    • Detect leaks
    • Detect Memory problems
    • Locate memory problems


  • Threading error analysis
    • Detect deadlocks
    • Detect deadlocks and data races
    • Locate deadlocks and data races


  • Custom analysis types - users can create their own types based on selected preset type.


How it works

Inspector performs the analysis in multiple steps:

1. The program is executed

2. It identifies problems that may need to be resolved.

3. Gathers problems.

4. Converts symbol information into filenames and line numbers.

5. Applies suppression rules.

6. Removes duplicates.

7. Creates problem sets.

8. Opens a debugging session.

Intel VTune™ Amplifier