Intel Advisor


Intel 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.

Vectorization Advisor

Intel Advisor incorporates two workflows : 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:
The Vectorization Advisor capability was introduced in 2016 release of Intel Advisor.
It works with compilers from GCC and Microsoft, but will provide additional information when used with Intel Compilers version 15.x or newer. Examples include "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 supports native analysis for 2nd generation Intel® Xeon Phi™ processor, 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 to analyze AVX-512 code characteristics while running analysis on platforms which don't support AVX-512.

Roofline performance model automation in Intel Advisor

Intel Advisor automates the Roofline Performance Model first proposed by at Berkeley and extended at the University of Lisbon.
Advisor "Roofline Analysis" helps to identify if given loop/function is memory or CPU bound. It also identifies under optimized loops that can have a high impact on performance if optimized, ,

Customer usage

From public sources it is known to be used by Schlumberger, Sandia national lab as well as by some "leading design" company, who classified it as "a great timesaver" and "incredibly useful tool in supporting parallel algorithm research".
Advisor 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.
From public sources, new Vectorization Advisor capabilities are known to be used by LRZ and ICHEC, Daresbury Lab, Pexip

Threading Advisor

Prototype Threading Designs
Software architects add code annotations to describe threading that are understood by Advisor, but ignored by the compiler. Advisor then projects the scalability of the threading and checks for synchronization errors.
Threading suitability projections for Intel Xeon Phi
Beginning with the 2015 release, Suitability analysis supported first generation Intel Xeon Phi™ coprocessor 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.