Unlike other memory and threading analysis tools, the Intel Inspector never requires any special recompiles in order to be used for analysis. It is compatible with Microsoft, GCC, and Intel Compilers. and can be used as a stand alone tool to analyze any application on both Windows or Linux. The tool detects memory leaks, memory corruption, illegal memory access, data races, and deadlocks. You can find errors easily during development when they are less expensive to fix.
- [Narrator] You can grab the Intel Inspector Memory and Thread Debugger tool from the Intel Developer Zone located at this link here. Scrolling down on this page, we can see some of the key features the Intel Inspector provides. For instance, you are taken directly to the source code locations where a memory error occurs and provided call stack information. Another feature is the ability for the Intel Inspector to provide you with race condition information. This is a key feature since race conditions do not occur every time, but when they do, the Intel Inspector will break into a debugger just before the error occurs so you can analyze it.
The tool will help us debug memory errors like memory leaks, memory corruption, illegal memory access, allocation/de-allocation API mismatches, heap data races, stack data races, and deadlocks. Other tools would make finding these problems troublesome, but we will see how the Intel Inspector streamlines the process of profiling, inspecting, optimizing, and re-analyzing, and how this makes development time more efficient. The tool lets you choose your level of analysis. You can choose little overhead which collects the basics and is fast, the second level which is for feature introductions because it is more time consuming, and the last level which is the most detailed.
It takes the most time to perform, but use it when a bug needs to be found after the release. We will be seeing memory growth charts when we analyze an OpenCV application which crashes due to a memory leak. With the Intel Inspector we will find the root cause quickly saving us both time and money.
- Installing Intel Inspector XE
- Setting up OpenCV
- Detecting memory leaks
- Visualizing memory usage growth
- Conducting memory leak analysis
- Fixing memory leaks in source code