Open main menu

CDOT Wiki β

Changes

GPU621/Intel Parallel Studio Inspector

708 bytes added, 18:04, 27 November 2020
Correctness Analyzer & Debugger
For further information, please refer to the official site of [https://software.intel.com/content/www/us/en/develop/tools/inspector.html Intel Inspector].
Intel Inspector is available as a stand-alone debugger as well as part of the Parallel Studio XE. Intel Inspector is designed to save money, time, data, and effort in developing applications. It is a convenient tool for solving memory, threading, and persistent memory errors of an application.
 
 
[[File:WorkFlow.png|500px]]
[https://hpc.llnl.gov/software/development-environment-software/intel-inspector Work Flow of Intel Inspector]
==Features==
===Correctness Analyzer & Debugger===
Normally a debugging process inserts a breakpoint right at the location where an error occurs. However, it is sometimes hard to find out what exactly the problem is because that location may have been executed hundreds of times. The Correctness Analyzer & Debugger makes the Intel Inspector work on the code without special recompiles for analysis. More, it makes the diagnosis faster by inserting breakpoints just before combining debug with analysis, the error Intel Inspector determines when a problem occurs and breaks into the debugger so that we know where at the right time and when the error occurslocation.
===Memory Debugger===
The memory problem is a big headache in programming. The Memory Debugger in Intel Inspector detects and locates the memory error location, as well as providing a graphical tool to show memory growth, locate the call stack , and the code snippet where the memory growth is produced.
===Threading Debugger===
In a program, threading problems are very hard to detect and locate since they are usually considered 'errors' in the program logic. The reason for this is that threading problems are often non-deterministic problems such as race conditions and deadlock. These kinds of problems do not happen in every run of the program and even they happen, the program runs as usual but generates wrong outputs. The Threading Debugger inside Intel Inspector works as an efficient diagnosis tool against threading errors in the program even if the program does not encounter the error. This debugger is especially particularly helpful when building HPC applications and optimizing codes using multi-threading algorithms.
When using Intel Inspector for analysis, it is important to have a proper balance between analysis deepness and memory overload.
= How to use =
 
== Intel Inspector GUI ==
It is extremely simple to use Intel Inspector. The Intel Inspector can work as a stand-alone application or as an insider function of the IDE. Here we use Microsoft Visual Studio as an example.
== On-Demand Memory Analysis ==
Intel Inspector offers on-demand memory analysis to help developers save time on debugging memory problems. Memory analysis is very expensive and takes a lot of time. With the on-demand analysis, a developer can specify a portion of the execution time of the application to minimize the overhead created by memory analysis. The on-demand analysis focuses on memory growth detection and memory leak analysis.
 
[[File:OnDemandMemoryAnalysis.jpg|1100px]]
Update 7: Friday, Nov 20, 2020 - Minor fixes
 
Update 8: Wednesday, Nov 25, 2020 - Minor fixes
119
edits