IBM Rational Purify* software is a tool for checking the memory correctness of your code. Intel® Inspector XE has that same functionality but also supports threading error analysis (such as data race and deadlock analysis) and multiple languages (C, C++, Microsoft .NET*, Fortran), while also providing a substantially more powerful GUI. This additional functionality makes it well worth considering moving to the Intel Inspector XE.
Intel Inspector XE also has consistently regular updates, with a major version released every couple of years, regular service packs, and intermittent update releases if customer issues arise. Intel also has a worldwide support network available to help you get the most out of the tool.
Rational Purify* Tools versus Intel Inspector XE
Recompilation Not Required with Intel Inspector XE
Rational Purify* tools use object code insertion at link time to find heap and stack memory errors during dynamic analysis. Intel Inspector XE uses binary instrumentation during dynamic analysis to find memory or threading errors that occur. This means that once you instrument your code for Rational Purify* tools you do not need to instrument it again, but it also means that you have to instrument all of your code in order to test, instead of just instrumenting on the fly.
It also means that you cannot just run your already-built application with Rational Purify* tools. You must, at a minimum, relink and possibly recompile in order to look for issues.
Interactive GUI
Intel Inspector XE provides a richer set of GUI features:
These features, especially Problem Sets and Filters, allow you to drill down to specific issues you are interested in more quickly and discover all of the information about the error, instead of just this particular expression of it. The persistent state information allows you to keep track of issues that were discovered previously, and focus on new issues or discover regressions quickly. State and suppression information can also be shared across a team, making it simple for one set of results to be worked on by multiple engineers (essentially for very large software applications).
Transitioning from Rational Purify*Toolsto Intel Inspector XE
The transition from Rational Purify* tools to the Intel Inspector XE is straightforward. You can buy the Intel Inspector XE or download a 30-day evaluation version from https://software.intel.com/en-us/intel-inspector-xe. In that same location you can also find videos that give a good overview of the tool, access to a full version of online help, and many articles that give insight into how to get the most out of your tool. This is also where you go to locate our user forums, which are monitored by both Intel personnel and our community of devoted users. The forums, and product support, should be able to answer any question you may have in a timely fashion.
So now that you have the tool installed, what next? Intel Inspector XE uses binary instrumentation (unlike Rational Purify* tools), which means that you do not need to recompile your sources. So you are mostly ready to go.
Converting Suppression Files
But if you have been using Rational Purify* tools for a long time, you most likely have a set of suppression files that you have been working with. So the first thing you should do is take advantage of our script to translate those suppressions into the Intel Inspector XE suppression format.
To do that, use the command line tool, inspxe-cl in the bin32 directory of your Intel Inspector XE installation:
inspxe-cl -convert-suppression-file -from=known_problems.pft -to=known_problems.sup
After you run this once, you never need to run it again. The suppression format is published in the documentation and completely editable, or you can take advantage of the GUI-based suppression editor to add to your suppressions as needed.
Preparing Your Project Files
At this point you can just run from the command line (use inspxe-cl –help or see product documentation for more information) or, if you have a complex setup, use project properties to help you get the exact command line you are looking for.
Choose Project Properties from the File menu to set up information about the source, symbol information, and the name/parameters of the application:
Next, use the Configure Analysis Type pane to specify the type of analysis you want to do and select/deselect options. Next, either click Start to run the analysis in the GUI, or take advantage of the Command Line button in the lower right corner to get the exact command you need to run this analysis from the command line.
Conclusion
Intel Inspector XE provides access to the powerful memory and thread correctness information that you are used to finding with the Rational Purify* tools, but also provides support for thread analysis and the Fortran language, as well as a powerful GUI. Our team support allows you to take the same result and use it across a large project or a widespread team without losing information. Intel Inspector XE has consistently regular updates, user forums, and a worldwide support network to help you get the most out of the tool.
* Other names and brands may be claimed as the property of others.