Profiling and Memory Checking Tools: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
[[Category:Tools]] | |||
= Tools for Profiling and Memory Checking = | |||
This is a collection of tools for profiling and memory checking. It's mostly a summary of programs/libraries mentioned in the forums, notably in threads "Advice on checking for memory leaks and dangling resources?"/forums/viewthread/1924 and "Other tools for Qt Development":/forums/viewthread/2248/. | |||
=== Linux, Mac OS X === | |||
Valgrind is the tool of choice for analyzing a variety of issues on Linux and Mac OS X. It uses individual tools for specific analysis like profiling and memory checking. Qt Creator's Analyze mode integrates Valgrind, and provides both memory checking and profiling functionality from within the IDE. Valgrind needs to be installed for that to work. Valgrind is not available on Windows, but since memory issues are usually not platform dependent, analysis can be done on Linux or Mac OS X as well. | |||
* "Valgrind&quot;:http://valgrind.org/<br />There is a tutorial on how to debug C++ code with Valgrind on Linux at http://devmentor.posterous.com/debugging-with-valgrind | |||
* "KCacheGrind&quot;:http://kcachegrind.sourceforge.net/html/Home.html<br />Visualizer for Valgrind profiling results | |||
* "Valkyrie&quot;:http://www.valgrind.org/downloads/current.html<br />Qt4-based GUI for the Valgrind 3.6.x and 3.7.x series | |||
* "Massif Visualizer&quot;:https://projects.kde.org/projects/extragear/sdk/massif-visualizer<br />visualizer for the massif (one of the valgrind tools) output | |||
* "AddressSanitizer&quot;:https://blog.qt.io/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/ Memory monitoring tool built into gcc 4.8 and clang | |||
* | === Windows === | ||
* | |||
* | * "AQTime&quot;:http://smartbear.com/products/development-tools/performance-profiling/ (commercial)<br />can detect memory leaks, but is mainly for profiling | ||
* | * "Bounds Checker&quot;:http://www.microfocus.com/products/micro-focus-developer/devpartner/index.aspx | ||
* | * "Deleaker&quot;:http://deleaker.com/ (commercial) detects memory, GDI and other leaks | ||
* | * "Dr.Memory&quot;:http://www.drmemory.org/ (Open-source memory monitoring tool) | ||
* | * "Intel Parallel Inspector&quot;:http://software.intel.com/en-us/articles/intel-parallel-inspector/ (commercial) | ||
* | * "Luke Stackwalker&quot;:http://lukestackwalker.sourceforge.net/ (Open-source CPU profiler based on sampling) | ||
* | * "Rational Purify&quot;:http://www-01.ibm.com/software/awdtools/purify/win/ (commercial) | ||
* "Visual Leak Detector&quot;:http://vld.codeplex.com/ | |||
* "Very Sleepy&quot;:http://www.codersnotes.com/sleepy (Open-source CPU profiler based on sampling) | |||
* Visual Studio Profiler (up to VS 2010 only in the ultimate version, VS 11 will have it in the professional version) | * Visual Studio Profiler (up to VS 2010 only in the ultimate version, VS 11 will have it in the professional version) | ||
Revision as of 14:16, 23 February 2015
Tools for Profiling and Memory Checking
This is a collection of tools for profiling and memory checking. It's mostly a summary of programs/libraries mentioned in the forums, notably in threads "Advice on checking for memory leaks and dangling resources?"/forums/viewthread/1924 and "Other tools for Qt Development":/forums/viewthread/2248/.
Linux, Mac OS X
Valgrind is the tool of choice for analyzing a variety of issues on Linux and Mac OS X. It uses individual tools for specific analysis like profiling and memory checking. Qt Creator's Analyze mode integrates Valgrind, and provides both memory checking and profiling functionality from within the IDE. Valgrind needs to be installed for that to work. Valgrind is not available on Windows, but since memory issues are usually not platform dependent, analysis can be done on Linux or Mac OS X as well.
- "Valgrind":http://valgrind.org/
There is a tutorial on how to debug C++ code with Valgrind on Linux at http://devmentor.posterous.com/debugging-with-valgrind - "KCacheGrind":http://kcachegrind.sourceforge.net/html/Home.html
Visualizer for Valgrind profiling results - "Valkyrie":http://www.valgrind.org/downloads/current.html
Qt4-based GUI for the Valgrind 3.6.x and 3.7.x series - "Massif Visualizer":https://projects.kde.org/projects/extragear/sdk/massif-visualizer
visualizer for the massif (one of the valgrind tools) output - "AddressSanitizer":https://blog.qt.io/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/ Memory monitoring tool built into gcc 4.8 and clang
Windows
- "AQTime":http://smartbear.com/products/development-tools/performance-profiling/ (commercial)
can detect memory leaks, but is mainly for profiling - "Bounds Checker":http://www.microfocus.com/products/micro-focus-developer/devpartner/index.aspx
- "Deleaker":http://deleaker.com/ (commercial) detects memory, GDI and other leaks
- "Dr.Memory":http://www.drmemory.org/ (Open-source memory monitoring tool)
- "Intel Parallel Inspector":http://software.intel.com/en-us/articles/intel-parallel-inspector/ (commercial)
- "Luke Stackwalker":http://lukestackwalker.sourceforge.net/ (Open-source CPU profiler based on sampling)
- "Rational Purify":http://www-01.ibm.com/software/awdtools/purify/win/ (commercial)
- "Visual Leak Detector":http://vld.codeplex.com/
- "Very Sleepy":http://www.codersnotes.com/sleepy (Open-source CPU profiler based on sampling)
- Visual Studio Profiler (up to VS 2010 only in the ultimate version, VS 11 will have it in the professional version)