Intel Parallel Advisor

From Infogalactic: the planetary knowledge core
(Redirected from Intel Advisor)
Jump to: navigation, search
Parallel Advisor
Developer(s) Intel Developer Products
Stable release XE 2016 Update 3 / February 15, 2016; 8 years ago (2016-02-15)
Operating system Windows and Linux
Type Profiler
License Proprietary, Freeware[1]
Website software.intel.com/en-us/intel-advisor-xe

Intel Advisor (also known as "Advisor XE", "Vectorization Advisor" or "Threading Advisor") is a SIMD vectorization optimization and shared memory threading assistance tool for C, C++, C# and Fortran software developers and architects. This product is available on Windows and Linux operating systems in form of Standalone GUI tool, Microsoft Visual Studio plug-in or command line interface (also supporting usage with MPI).

Advisor XE features. Vectorization Analysis.

Intel Advisor incorporates two workflows (two feature-sets): Vectorization Advisor and Threading Advisor.

Vectorization Advisor supports analysis of scalar, SSE, AVX, AVX2 and AVX-512-enabled codes generated by Intel, GNU and Microsoft compilers auto-vectorization. It also supports analysis of "explicitly" vectorized codes which use OpenMP 4.x or Intel Cilk Plus as well as codes or written using C vector intrinsics or assembly language. Intel Advisor includes following main features:

  • Advisor "Survey" feature which helps to vectorize scalar part of the code or improve performance of already vectorized loops.
    • Survey includes dynamic hotspots analysis, seamless integration with Intel Compiler diagnostics, cost / benefit / efficiency analysis and interactive optimization advices ("Recommendations")
File:IntelAdvisorVectorSurveyCPU.png
Vectorization "Survey" report with "Recommendation" activated
  • Advisor "Trip Counts" feature measures accurate (exact) call counts and iteration counts for all loops in user application.
  • Advisor "Correctness" feature automatically detects loop-carried dependencies and other potential data sharing issues.
  • Advisor "Memory Access Pattern" feature provides analysis of memory access pattern (stride).
  • Advisor Threading "Suitability" feature helps to quickly predict and compare the parallel SMP scalability and performance losses for different possible threading designs.
    • Typical Suitability reports are shown on Suitability CPU screen-shot on the right side. Advisor Suitability provides dataset size (iteration space) modeling capabilities and performance penalties break-downn (exposing negative impact caused by Load Imbalance, Parallel Runtimes Overhead and Lock Contention).[2]
Suitability "CPU model"

The Vectorization Advisor capability was introduced in 2016 release of Intel Advisor.[3][4][5] When using in combination with Intel Compilers version 15.x or 16.x Advisor Survey analysis provides additional capabilities like "Why Not Vectorize" or "Vector Efficiency" metrics.

Intel Advisor is available as part of Intel Parallel Studio XE

Intel® Xeon Phi™ processor and AVX-512 support

Vectorization Advisor (part of Intel Advisor 2016) supports native analysis for 2nd generation Intel® Xeon Phi™ (codenamed Knights Landing) processor,[6][7][8] starting from Intel Advisor 2016 Update 3 version. Advisor Survey and MAP analysis have several AVX-512-specific tuning capabilities. Advisor also has separate capability ("Analysis of non-Executed code paths") to analyze AVX-512 code characteristics while running analysis on platforms which don't support AVX-512.[9]

Customer usage

From public sources it is known to be used by Schlumberger,[10] Sandia national lab as well as by some "leading design" company,[11] who classified it as "a great timesaver" and "incredibly useful tool in supporting parallel algorithm research".

Advisor XE also aims to simplify and speed-up parallel design and implementation by providing step-by-step workflow, claimed to be useful for academia and educational purposes.[12]

From public sources, new Vectorization Advisor capabilities (introduced in August' 2015) are known to be used by LRZ and ICHEC,[13] Daresbury Lab,[14] Pexip [15]

Additional capabilities

Threading suitability projections for first generation Intel Xeon Phi (codenamed Knights Corner)

File:IntelAdvisorSuitabilityPhi.png
Suitability "Xeon Phi™" model

Starting from XE 2015 release,[16] Suitability analysis supported first generation Intel Xeon Phi™ coprocessor (Knights Corner) threading performance, scalability and parallel runtimes overheads modeling. Suitability estimates Intel® Xeon Phi™ processor peak performance for a given loop/workload and automatically compares it with appropriate double-socket 16-core Intel® Xeon® reference performance baseline.[17]

See also

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. https://indico.cern.ch/event/392043/attachments/784430/1075311/HPC_codes_modernization_tools_2.pdf
  4. http://habrahabr.ru/company/intel/blog/255731/
  5. http://goparallel.sourceforge.net/wp-content/uploads/2015/09/TheParallelUniverse_Issue_22-Feature2.pdf
  6. https://software.intel.com/en-us/articles/intel-advisor-xe-2016-update-3-what-s-new
  7. https://doc.itc.rwth-aachen.de/download/attachments/20775798/Programming_SIMD_Advisor_part2.pdf?version=1&modificationDate=1448273651000&api=v2
  8. http://sc15.supercomputing.org/schedule/event_detail?evid=tut150
  9. https://software.intel.com/en-us/articles/intel-advisor-xe-2016-update-3-what-s-new
  10. Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. Lua error in package.lua at line 80: module 'strict' not found.
  13. http://software.intel.com/en-us/intel-advisor-xe/reviews
  14. Lua error in package.lua at line 80: module 'strict' not found.
  15. Lua error in package.lua at line 80: module 'strict' not found.
  16. Lua error in package.lua at line 80: module 'strict' not found.
  17. Lua error in package.lua at line 80: module 'strict' not found.

External links