During "Easy Ways to Solve Parallel Performance Challenges" webinar presented by Gary Carleton, April 21, we received the following questions and we thought we would share them with you:
Q. Does Intel® Parallel Studio provide any support for Microsoft Visual* Studio* 2003?
A. Microsoft* Visual Studio* 2005 and 2008 are supported. Please check: /sites/default/files/m/a/0/3/release_notes_studio.pdf
Q. What operating systems are supported?
A. Please check system requirements here: /sites/default/files/m/a/0/3/release_notes_studio.pdf
Q. Does code need to be compiled with the Intel® Compiler or can Microsoft Compilers be used?
A. You can use either the Intel® or the Microsoft compilers.
Q. Does code need to be compiled in any special way to enable source-code views?
A. To provide accurate performance data, the Intel® Parallel Amplifier requires debug information for binary files it analyzes. Generating debug information should not affect compiler optimizations but the linker may turn off some default optimizations, therefore verify that the optimization switches are enabled. If debug information does not exist, the Amplifier may not unwind the call stack correctly. Note, in some cases the finalization of results for modules without debug information can take much longer than the finalization with debug information present.
Q. Do I need to use Intel® VTuneTM Performance analyzer or Intel® Thread Checker etc. any more since I found that Intel® Parallel Studio can do what VTune analyzer always do?
A. VTune analyzer provides additional functionality. For example, VTune Event Based Sampling (the ability to track processor level events) is one such area. The Intel® Parallel Amplifier, an Intel® Parallel Studio tool, provides information on the performance of your code. Use the Parallel Amplifier to analyze the following types of performance issues in your threaded applications:
- Identify the most time-consuming (hot) functions
- Locate sections of code that do not effectively utilize available processor time
- Determine the best sections of code to optimize for sequential performance and for threaded performance
- Locate synchronization objects that affect the program performance
- Find whether, where, and why your program spends time on input/output operations
- Identify and compare the performance impact of different synchronization methods, different numbers of threads, or different algorithms
Q. Are there many overlapped functions between Intel® Parallel Studio and other threading tools?
A. There are some. Moreover, Parallel Studio is built on the latest technology (PIN) for faster analysis. Also, Parallel Inspector includes memory checking in addition to "Thread Checking". Parallel Amplifier has Statistical Call Graph for profiling your applications with low overhead to detect where time is spent in your application. See Intel® Parallel Amplifier vs. Intel® VTuneTM Analyzer Comparison.
Q. Does the analysis done by Intel® Parallel Amplifier go to the level of identifying contention on global heap (so not just locking in the user's code, but also deep inside libraries)?
A. The data collector interrupts a process, collects samples of all active instruction addresses, and reproduces a call sequence (stack) upon each sample. Intel® Parallel Amplifier can identify contention on the system libraries. If you do not have the source code for those libraries, you will see just the library name and you can walk the stack back up to the New/Malloc/etc in your code.
Q. Can the Intel® Parallel Amplifier attach to a running process?
A. Currently, this is not a supported functionality. However, a running process can be analyzed via VTune analyzer.
Q. Does Intel® Parallel Studio support Linux?
A. Currently Intel® Parallel Studio is designed for Microsoft Windows*/Microsoft Visual* Studio* only. We do have an existing line of tools, including Intel® VTune analyzer, Intel® Thread Checker, and the Intel® Compiler, which run on Linux*.
Q. Is it possible to see the specific function in source code in concurrency view?
A. The source/Assembly window displays accurate information provided that:
- Your code is compiled with the debug information and debug information is written correctly in the debug information file (or symbol file).
- The source code file exists.
If there is no correct debug information, or symbol file is unavailable, the assembly data may be incorrect. In this case, the Amplifier uses heuristics to define function boundaries in the binary module.
Q. Does Amplifier support Open MP3.0 task, Win32 API and Intel® Threading Building Block?
A. Yes these are supported. Note for Intel® Threading Building Block, the Intel® Parallel Studio analysis obtained will only be thread based (not task based).
Q. Does Intel® Parallel Studio work with the Intel® Fortran compiler?
A. Intel® Parallel Studio is designed and targeted and tested for C++ software. The analysis is based on the binary not the source, how well it works with Fortran may vary. Please be aware that in addition to Intel Parallel Studio product, Intel offers a HPC line of products that offer full support for Fortran. This includes the Intel® Fortran compiler of course, but also Intel® VTune Performance Analyzer and Intel® Thread Checker. The Intel Math Kernel Library also includes full Fortran interfaces to BLAS, LAPACK, FFT and other common numerical algorithms. Most Fortran developers use the HPC line of Intel products.