Locating files for source drill-down in Intel® Parallel Amplifier

Collecting performance data on multiple hardware architectures can expose issues in your code that may be the result of specific architectural differences.  Replicating the development environment and copying the solution from the build machine onto a different machine is laborious but straightforward.  Since replicating the source tree may pose a source management problem, a better solution would be to make the source available on a share disk to maintain a single copy.  However, you might get something like the following in Intel® Parallel Amplifier the first time you try to drill down to a source file it can't find:


If you can share the whole device containing your sources, replacing just the logical device name in that path is very easy.  For example, in the case above the compiler found the source file at "C:\Complex\Path\Down\To\Specific\Source.cpp."  Mounting the remote C: on a local device, say O: means you can copy the whole string and change the "C" to an "O."  The interface also provides a Browse button in case the file is located elsewhere.  The browse field recognizes valid paths and files and copies the folder hierarchy into the Add directoryfield.  You may choose to trim it down to the local root (assuming the entire source or at least a portion of it is rooted in a single folder).  If the source is not available, the Show Assembly button will abort the source matching process and show the performance feature in the context of the disassembled instructions.  Paths added by this means show up in the Project Properties:


In my synthesized example, I switched the logical device from C: to O: and trimmed down the source path:


Having trimmed the source path to cover a subtree of source folders, I would also set the Search Subdirectories optionThis window is also how you could add additional source file directories and trees and to deal with even more complex situations.

For more complete information about compiler optimizations, see our Optimization Notice.