Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 Features  



1.1  Vectorization optimization  





1.2  Automated Roofline analysis  





1.3  Threading prototyping  





1.4  Offload modelling  







2 Customer usage  





3 See also  





4 References  





5 External links  














Intel Advisor






Español
 

Edit links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 
















Appearance
   

 






From Wikipedia, the free encyclopedia
 


Intel Advisor
Developer(s)Intel Developer Products
Stable release

2021.4 / October 1, 2021; 2 years ago (2021-10-01)[1]

Operating systemWindows and Linux (UI-only on macOS)
TypeProfiler
LicenseFree and commercial support
Websitesoftware.intel.com/content/www/us/en/develop/tools/oneapi/components/advisor.html

Intel Advisor (also known as "Advisor XE", "Vectorization Advisor" or "Threading Advisor") is a design assistance and analysis tool for SIMD vectorization, threading, memory use, and GPU offload optimization. The tool supports C, C++, Data Parallel C++ (DPC++), Fortran and Python languages. It is available on Windows and Linux operating systems in form of Standalone GUI tool, Microsoft Visual Studio plug-in or command line interface.[2] It supports OpenMP (and usage with MPI). Intel Advisor user interface is also available on macOS.

Intel Advisor is available for free as a stand-alone tool or as part of the Intel oneAPI Base Toolkit. Optional paid commercial support is available for the oneAPI Base Toolkit.

Features[edit]

Vectorization optimization[edit]

Vectorization is the operation of Single Instruction Multiple Data (SIMD) instructions (like Intel Advanced Vector Extensions and Intel Advanced Vector Extensions 512) on multiple objects in parallel within a single CPU core. This can greatly increase performance by reducing loop overhead and making better use of the multiple math units in each core.

Intel Advisor helps find the loops that will benefit from better vectorization, identify where it is safe to force compiler vectorization.[3] It 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 and newer as well as codes or written using C vector intrinsicsorassembly language.[4][5]

Automated Roofline analysis[edit]

Intel Advisor automates the Roofline Performance Model first proposed at Berkeley[6] and extended at the University of Lisbon.[7]

Roofline Performance Model automation integrated with other features in Intel Advisor. Each circle corresponds to one loop or function

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.[8][9][10][11]

Intel Advisor also provides an automated memory-level roofline implementation that is closer to the classical Roofline model. Classical Roofline is especially instrumental for high performance computing applications that are DRAM-bound. Advisor memory level roofline analyzes cache data and evaluates the data transactions between different memory layers to provide guidance for improvement.[12]

Intel Advisor roofline analysis supports code running on CPU or GPU.[13][14] It also supports integer based applications - that is heavily used in machine learning, big data domains, database applications, financial applications like crypto-coins.[15]

Threading prototyping[edit]

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. Advisor Threading "Suitability" feature helps to 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-down (exposing negative impact caused by Load Imbalance, Parallel Runtimes Overhead and Lock Contention).[16]

Suitability "CPU model"

Offload modelling[edit]

Advisor adds GPU offload performance modeling feature in the 2021 release. It collects application performance characteristics on a baseline platform and builds analytical performance model for target (modelled) platform.

This provides performance speedup estimation on target GPUs and overhead estimations for offloading, data transfer and scheduling region execution and pinpoints performance bottlenecks.[17][18][19] This information can serve for choosing offload strategy: selecting regions to offload and anticipate potential code restructuring needed to make it GPU-ready.

Customer usage[edit]

Intel Advisor is used by Schlumberger,[20] Sandia national lab, and others[21] for design and parallel algorithm research and Vectorization Advisor capabilities known to be used by LRZ and ICHEC,[22] Daresbury Lab,[23] Pexip.[24]

The step-by-step workflow is used by academia for educational purposes.[25]

See also[edit]

References[edit]

  1. ^ "Intel® Advisor Release Notes and New Features".
  • ^ "Command Line Use Cases". Intel. Retrieved 2021-01-05.
  • ^ "Optimize Vectorization Aspects of a Real-Time 3D Cardiac..." Intel. Retrieved 2021-01-07.
  • ^ "HPC Code Modernization Tools" (PDF).
  • ^ "Новый инструмент анализа SIMD программ — Vectorization Advisor". habr.com (in Russian). Retrieved 2021-01-05.
  • ^ Williams, Samuel (April 2009). "Roofline: An insightful Visual Performance model for multicore Architectures" (PDF). University of Berkeley.
  • ^ Ilic, Aleksandar. "Cache-aware Roofline model: Upgrading the loft" (PDF). Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa.
  • ^ "Roofline Analysis in Intel Advisor 2017: youtube how-to video". YouTube.
  • ^ "Intel Advisor Roofline step-by-step Tutorial".
  • ^ "Using Roofline Model and Intel Advisor, presented by Sam Williams, Roofline performance model author".
  • ^ "Case Study: SimYog Improves a Simulation Tool Performance by 2x with..." Intel. Retrieved 2021-01-07.
  • ^ "Memory-Level Roofline Model with Intel® Advisor". Intel. Retrieved 2021-01-05.
  • ^ "CPU / Memory Roofline Insights Perspective". Intel. Retrieved 2021-01-05.
  • ^ "GPU Roofline Insights Perspective". Intel. Retrieved 2021-01-05.
  • ^ "Integer Roofline Modeling in Intel® Advisor". Intel. Retrieved 2021-01-05.
  • ^ "How to model suitability using Advisor XE 2015?".
  • ^ "Offload Modeling Resources for Intel® Advisor Users". Intel. Retrieved 2021-01-05.
  • ^ "Identify Code Regions to Offload to GPU and Visualize GPU Usage (Beta)". Intel. Retrieved 2021-01-05.
  • ^ "Offload Modeling Perspective". Intel. Retrieved 2021-01-05.
  • ^ "Schlumberger* - Parallelize Oil and Gas software with Intel Software products" (PDF).
  • ^ ""Leading design" company Advisor XE case study" (PDF).
  • ^ "Design Code for Parallelism and Offloading with Intel® Advisor".
  • ^ "Computer-Aided Formulation case study: getting helping hand from the Vectorization Advisor".
  • ^ "Pexip Speeds Enterprise-Grade Videoconferencing" (PDF).
  • ^ "Supercomputing'2012 HPC educator with Slippery Rock University".
  • External links[edit]


    Retrieved from "https://en.wikipedia.org/w/index.php?title=Intel_Advisor&oldid=1177307840"

    Categories: 
    Debuggers
    Intel software
    Memory management software
    Hidden categories: 
    CS1 Russian-language sources (ru)
    Articles with short description
    Short description matches Wikidata
     



    This page was last edited on 27 September 2023, at 03:41 (UTC).

    Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Mobile view



    Wikimedia Foundation
    Powered by MediaWiki