Profiling and Memory Checking Tools: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
 
No edit summary
Line 1: Line 1:
=Tools for Profiling and Memory Checking=
[[Category:Tools]]


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 [[forums/viewthread/2248/|Other tools for Qt Development]].
= Tools for Profiling and Memory Checking =


===Linux, Mac OS X===
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/.


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 <span class="caps">IDE</span>. 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.
=== Linux, Mac OS X ===


* [http://valgrind.org/ Valgrind] ''[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
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.
* [http://kcachegrind.sourceforge.net/html/Home.html KCacheGrind] ''[kcachegrind.sourceforge.net]''<br /> Visualizer for Valgrind profiling results
* [http://www.valgrind.org/downloads/current.html Valkyrie] ''[valgrind.org]''<br /> Qt4-based <span class="caps">GUI</span> for the Valgrind 3.6.x and 3.7.x series
* [https://projects.kde.org/projects/extragear/sdk/massif-visualizer Massif Visualizer] ''[projects.kde.org]''<br /> visualizer for the massif (one of the valgrind tools) output
* [https://blog.qt.io/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/ AddressSanitizer] ''[blog.qt.io]'' Memory monitoring tool built into gcc 4.8 and clang


===Windows===
* &quot;Valgrind&amp;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
* &quot;KCacheGrind&amp;quot;:http://kcachegrind.sourceforge.net/html/Home.html<br />Visualizer for Valgrind profiling results
* &quot;Valkyrie&amp;quot;:http://www.valgrind.org/downloads/current.html<br />Qt4-based GUI for the Valgrind 3.6.x and 3.7.x series
* &quot;Massif Visualizer&amp;quot;:https://projects.kde.org/projects/extragear/sdk/massif-visualizer<br />visualizer for the massif (one of the valgrind tools) output
* &quot;AddressSanitizer&amp;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


* [http://smartbear.com/products/development-tools/performance-profiling/ <span class="caps">AQT</span>ime] ''[smartbear.com]'' (commercial)<br /> can detect memory leaks, but is mainly for profiling
=== Windows ===
* [http://www.microfocus.com/products/micro-focus-developer/devpartner/index.aspx Bounds Checker] ''[microfocus.com]''
 
* [http://deleaker.com/ Deleaker] ''[deleaker.com]'' (commercial) detects memory, <span class="caps">GDI</span> and other leaks
* &quot;AQTime&amp;quot;:http://smartbear.com/products/development-tools/performance-profiling/ (commercial)<br />can detect memory leaks, but is mainly for profiling
* [http://www.drmemory.org/ Dr.Memory] ''[drmemory.org]'' (Open-source memory monitoring tool)
* &quot;Bounds Checker&amp;quot;:http://www.microfocus.com/products/micro-focus-developer/devpartner/index.aspx
* [http://software.intel.com/en-us/articles/intel-parallel-inspector/ Intel Parallel Inspector] ''[software.intel.com]'' (commercial)
* &quot;Deleaker&amp;quot;:http://deleaker.com/ (commercial) detects memory, GDI and other leaks
* [http://lukestackwalker.sourceforge.net/ Luke Stackwalker] ''[lukestackwalker.sourceforge.net]'' (Open-source <span class="caps">CPU</span> profiler based on sampling)
* &quot;Dr.Memory&amp;quot;:http://www.drmemory.org/ (Open-source memory monitoring tool)
* [http://www-01.ibm.com/software/awdtools/purify/win/ Rational Purify] ''[01.ibm.com]'' (commercial)
* &quot;Intel Parallel Inspector&amp;quot;:http://software.intel.com/en-us/articles/intel-parallel-inspector/ (commercial)
* [http://vld.codeplex.com/ Visual Leak Detector] ''[vld.codeplex.com]''
* &quot;Luke Stackwalker&amp;quot;:http://lukestackwalker.sourceforge.net/ (Open-source CPU profiler based on sampling)
* [http://www.codersnotes.com/sleepy Very Sleepy] ''[codersnotes.com]'' (Open-source <span class="caps">CPU</span> profiler based on sampling)
* &quot;Rational Purify&amp;quot;:http://www-01.ibm.com/software/awdtools/purify/win/ (commercial)
* &quot;Visual Leak Detector&amp;quot;:http://vld.codeplex.com/
* &quot;Very Sleepy&amp;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)
===Categories:===
* [[:Category:Tools|Tools]]

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&quot;:/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.

Windows