Compiler Topics

Intel Fortran Composer XE 2015新特性 – offload非连续数组片段

在新发布的Intel Fortran Composer XE 2015中英特尔编译器加入了许多针对至强融核™ 协处理器编程的新特性,其中之一就是在Fortran编译器中加入了offload非连续数组片段的支持。

 

在使用Intel Fortran Composer XE 2015之前版本的编译器时,使用offload指令在CPU和协处理器之间传递数组片段时必须使用内存连续存放的片段。考虑下面的例子:

 

subroutine foo(a,b,c,n)

real::a(n,n),b(2*n,2*n),c(2*n,2*n)

integer::i,j

 

!dir$ offload begin target(mic) in(b(1:n,1:2*n:2),c(1:n,2:2*n:2)) out(a)

do i=1,n

   do j =1,n

  • Developers
  • Students
  • Linux*
  • Microsoft Windows* (XP, Vista, 7)
  • Fortran
  • Beginner
  • Intermediate
  • Intel® Fortran Compiler
  • Intel® Parallel Studio XE Composer Edition
  • Intel Xeon Phi Coprocessor
  • Intel Fortran Composer XE
  • Development Tools
  • Intel® Many Integrated Core Architecture
  • Improving Mandelbrot by Using Intel® Processor Graphics Supported by Intel® C++ Compiler

     

    Introduction

    Intel® C++ compiler enables offloading of existing C/C++ data-parallel code with very few source code changes to run on Intel(R) Processor Graphics. This article provides an example on how Intel(R) C++ compiler offloading feature help improving performance of Mandelbrot algorithm with very few program changes.

    Version

    Intel(R) C++ Compiler 15.0

    Solution

  • Developers
  • Professors
  • Students
  • C/C++
  • Intermediate
  • Intel Fortran Composer XE 2015新特性 – Block结构(Block Construct)

    在新发布的Intel Fortran Composer XE 2015中英特尔编译器加入了对Fortran 2008标准中引入的Block结构(Block Construct)的支持。Block结构的使用类似于C/C++语言中的复合语句,它使程序员可以更加灵活的创建仅具有局部作用域的数据结构和相关代码。Block结构的语法表示为:

    [可选名称:] BLOCK

             [可选的数据声明]

             block 代码

    END BLOCK [名称]

    其中的数据声明可以是除了COMMON,EQUIVALENCE,NAMELIST,IMPLICIT等属性之外的数据结构。这些数据可以具有SAVE属性,但该属性仅在所属的Block结构中有效,外部定义的SAVE属性不影响Block内部定义的数据。

     

    考虑下面的例子:

    block

  • Developers
  • Students
  • Linux*
  • Microsoft Windows* (XP, Vista, 7)
  • Fortran
  • Beginner
  • Intermediate
  • Intel® Fortran Compiler
  • Intel® Parallel Studio XE Composer Edition
  • Intel Parallel Composer XE
  • Development Tools
  • Intel® Parallel Studio XE 2015 Update 1 Cluster Edition Readme

    The Intel® Parallel Studio XE 2015 Update 1 Cluster Edition for Linux* and Windows* combines all Intel® Parallel Studio XE and Intel® Cluster Tools into a single package. This multi-component software toolkit contains the core libraries and tools to efficiently develop, optimize, run, and distribute parallel applications for clusters with Intel processors.  This package is for cluster users who develop on and build for IA-32 and Intel® 64 architectures on Linux* and Windows*, as well as customers running over the Intel® Xeon Phi™ coprocessor on Linux*. It contains:

  • Linux*
  • Microsoft Windows* (XP, Vista, 7)
  • Microsoft Windows* 8.x
  • Server
  • C/C++
  • Fortran
  • Intel® Parallel Studio XE Cluster Edition
  • Message Passing Interface
  • Cluster Computing
  • Known Issue: NDK_TOOLCHAIN does not work in Application.mk for other compilers after integration of the Intel® C++ Compiler 15.0 toolchain

    Product affected: Intel® System Studio 2015

    Component affected: Intel® C++ Compiler 15.0 for Android* target 

    OS affected: Windows OS, Linux OS

    NDK affected: should affect all supported NDK versions (verified with NDK r9d to reproduce).

    Internal defect tracking ID (CQ): DPD200362855

    Issue

  • Developers
  • Professors
  • Students
  • Android*
  • Linux*
  • Microsoft Windows* (XP, Vista, 7)
  • Microsoft Windows* 8.x
  • C/C++
  • Distributed Memory Coarray Fortran with the Intel Fortran Compiler for Linux: Essential Guide

    Introduction : 
    This is an essential guide to using the Coarray Fortran (CAF) feature of the Intel Fortran Composer XE 2013 SP1 and Intel Parallel Studio XE 2015, Cluster Edition for Linux on a distributed memory cluster.

  • Developers
  • Linux*
  • Fortran
  • Advanced
  • Corray Fortran
  • 英特尔® 实感™ (Intel® RealSense™) 技术动手开发实践课


    抢先试用英特尔® 实感™ 摄像头 (lntel® RealSense™ Camera)

             ----参与一天的英特尔 实感™ 摄像头动手开发实验课,并开始编码您自己的 3D 应用

    realsense

    英特尔® 实感™ (Intel® RealSense™) 技术支持通过视频、手势和语音,以全新方式与电脑和平板电脑进行交互,能够大力促进创新发展。实感™ 摄像头可扫描物体,测量物体的高度、距离、尺寸、轮廓和颜色,可帮助您对扫描的物体进行操作、处理、甚至是 3D 打印。它采用了高端技术,可追踪手部和手指,识别语音和脸部,并分析嘴唇、眼睛和脸颊的形状,从脸部表情中获取信息,因此是一款强大的工具。

  • Developers
  • Intel AppUp® Developers
  • Partners
  • Professors
  • Microsoft Windows* 8.x
  • Intel® RealSense™ Technology
  • C#
  • C/C++
  • Unity
  • Advanced
  • Intel® RealSense™ Technology
  • Intel Fortran Composer XE 2015新特性 – 参数化派生类型(Parameterized Derived Types)

    在新发布的Intel Fortran Composer XE 2015中英特尔编译器加入了对Fortran 2003标准中引入的参数化派生类型(Parameterized Derived Types)的支持。所谓参数化派生类型就是允许程序员创建一个派生类型的模板,该模板可以拥有延迟定义的KIND和length参数。在使用参数化派生类型是,KIND参数必须是编译时常量,而length参数可以在运行时确定。

     

    考虑下面的例子:

    TYPE humongous_matrix(k, d)
      INTEGER, KIND :: k = kind(0.0)
      INTEGER(selected_int_kind(12)), LEN :: d
      REAL(k) :: element(d,d))
    END TYPE

    TYPE(humongous_matrix(8,10000000)) :: giant

  • Developers
  • Students
  • Linux*
  • Microsoft Windows* (XP, Vista, 7)
  • Microsoft Windows* 8.x
  • Fortran
  • Beginner
  • Intermediate
  • Intel® Fortran Compiler
  • Intel® Parallel Studio XE Composer Edition
  • Intel Parallel Composer XE
  • Development Tools
  • Subscribe to Compiler Topics