Intel® Parallel Studio XE

Diagnostic 15134: vectorization support: reference xxxx has unaligned access (Fortran)

Cause:

The vectorizer cannot safely use aligned loads or stores for this data access, either because the data are not aligned to an n-byte boundary in memory, or because the compiler does not know the alignment. The compiler must use unaligned memory accesses, which may be less efficient. The value of n depends on the targeted instruction set and corresponds to the width of the vector instructions: 16 for Intel® SSE, 32 for Intel® AVX and 64 for Intel® AVX-512 instructions.

Example:

  • Apple OS X*
  • Linux*
  • Microsoft Windows* (XP, Vista, 7)
  • Microsoft Windows* 8
  • Fortran
  • Intel® Composer XE
  • Compilador Fortran Intel®+
  • Composer XE Fortran Intel®
  • Composer XE Visual Fortran Intel®
  • Intel® Fortran Studio XE
  • Intel® Parallel Studio XE
  • error
  • vectorization diagnostic messages
  • alignment
  • Ferramentas de desenvolvimento
  • Vetorização
  • Intel Software Tools Webinar Series Archive

    This free webinar series presented tools, tips, and techniques that will help sharpen your development skills on Intel processors/coprocessors including Intel® Xeon® processor and Intel® Xeon Phi™ coprocessor. Intel technical experts as well as open source innovators discuss topics ranging from compiler techniques including vectorization & OpenMP 4.0, performance libraries, debugging, error checking and tuning to boost application and platform performance. Come to the live sessions with your programming questions for Intel technical experts to answer.

  • Desenvolvedores
  • C/C++
  • Fortran
  • Intel® Cilk™ Plus
  • Biblioteca MPI Intel®
  • Módulos de sub-rotinas Intel®
  • Intel® Cluster Studio XE
  • Intel® Fortran Studio XE
  • Intel® Parallel Studio XE
  • Intel® Advisor XE
  • Intel® VTune™ Amplifier XE
  • Intel® Inspector XE
  • Webinars
  • Arquitetura Intel® Many Integrated Core
  • Intel® Parallel Studio XE 2013 SP1 for Windows* Update 2

    Intel® Parallel Studio XE 2013 SP1 parallel software development suite combines Intel's C/C++ compiler and Fortran compiler; performance and parallel libraries; error checking, code robustness, and performance profiling tools into a single suite offering.  This new product release includes:

  • Desenvolvedores
  • Microsoft Windows* (XP, Vista, 7)
  • Microsoft Windows* 8
  • C/C++
  • Fortran
  • Intel® Parallel Studio XE
  • Intel® Parallel Studio XE 2013 SP1 for Linux* Update 2

    Intel® Parallel Studio XE 2013 SP1 parallel software development suite combines Intel's C/C++ compiler and Fortran compiler; performance and parallel libraries; error checking, code robustness, and performance profiling tools into a single suite offering.  This new product release includes:

  • Desenvolvedores
  • Linux*
  • C/C++
  • Fortran
  • Intel® Parallel Studio XE
  • Diagnostic 15015: loop was not vectorized: unsupported data type (Fortran)

    Cause:

    The vectorizer does not support certain data types because there is no corresponding SIMD instruction. For example, the compiler supports REAL(16) arithmetic (quad precision) through a software implementation, but is unable to vectorize it:

  • Apple OS X*
  • Linux*
  • Microsoft Windows* (XP, Vista, 7)
  • Microsoft Windows* 8
  • Fortran
  • Compilador Fortran Intel®+
  • Composer XE Fortran Intel®
  • Composer XE Visual Fortran Intel®
  • Intel® Fortran Studio XE
  • Intel® Parallel Studio XE
  • 使用英特尔® Composer XE为至强融核™ 协处理器进行Offload 编译

    Offload编译指的是在一个可运行的主机代码中加入编译指示或者某些新的关键字使代码段运行在基于英特尔集成众核架构(英特尔MIC架构)的协处理器上。其编程方式类似于使用OpenMP* 指示或英特尔 Cilk™ Plus关键字在串行代码中加入并行。

     

    在编译代码时英特尔®编译器会同时为两种目标架构生成代码。该代码既可以在安装了协处理器的系统上运行,也可以在没有协处理器的系统上运行。这使得程序编写者无需担心目标系统是否具备运行协处理器代码的条件,从而简化了编程的复杂度。这种编译方式又被称作“Offload编译”或“异构编译”。

     

    主机CPU和基于英特尔集成众核架构(英特尔MIC架构)的协处理器在硬件上并不共享物理或虚拟内存,所以英特尔编译器在编译过程中会通过加入代码来自完成主机和协处理器之间的传输数据(程序员无需编写额外代码)。目前,有两种可用的数据传输模型:

     

    显式拷贝

    程序员在offload pragma/directive中指定需要在主机和扩展卡之间拷贝的变量。

    例如:

  • Professores
  • Linux*
  • Cliente empresarial
  • C/C++
  • Fortran
  • Intermediário
  • Intel® Parallel Studio XE
  • Intel Xeon Phi Coprocessor
  • Computação de cluster
  • Ferramentas de desenvolvimento
  • Arquitetura Intel® Many Integrated Core
  • Diagnostic 15011: loop was not vectorized: statement cannot be vectorized (Fortran)

     

    Cause:

    The loop contains a statement that cannot be mapped to SIMD instructions by the vectorizer. In the example below, the loop contains an assignment to a derived data type which is not directly vectorizable.

    Example:

  • Apple OS X*
  • Linux*
  • Microsoft Windows* (XP, Vista, 7)
  • Microsoft Windows* 8
  • Fortran
  • Compilador Fortran Intel®+
  • Composer XE Fortran Intel®
  • Composer XE Visual Fortran Intel®
  • Intel® Fortran Studio XE
  • Intel® Parallel Studio XE
  • warning
  • error
  • remark
  • Assine o Intel® Parallel Studio XE