Intel® C++ Compiler XE 13.1 User and Reference Guides

Overview: Intel® MIC Architecture

This topic only applies to Intel® Many Integrated Core Architecture (Intel® MIC Architecture).

The Intel® compiler provides several elements to enable programming for and building binaries to run on the Intel® Many Integrated Core Architecture (Intel® MIC Architecture), including:

Programming for Intel® MIC Architecture

You can write parallel programs that can offload sections of code to run on Intel® MIC Architecture, or alternatively, that run natively on Intel® MIC Architecture. The compiler provides the following language extensions to facilitate programming for Intel® MIC Architecture:

Name

Description

offload pragma

offload_attribute pragma

offload_transfer pragma

offload_wait pragma

Pragmas to control the data transfer between the CPU and the coprocessor.

_Cilk_offload keyword

_Cilk_shared keyword

Keywords to control the data transfer between the CPU and the coprocessor. The data to be exchanged between the CPU and the coprocessor can be arbitrarily complex.

__MIC__ macro

__KNC__ macro

__INTEL_OFFLOAD macro

Predefined macros for Intel® MIC Architecture.

Intrinsics

Intrinsics for Intel® MIC Architecture.

Class libraries

Class libraries for SIMD operations.

APIs in offload.h

A set of functions for:

  • dealing with multiple coprocessors

  • calling functions on the CPU to modify the coprocessor's execution environment

  • writing code that should not be built for CPU-only execution

Building for Intel® MIC Architecture

The compiler provides several compiler options and environment variables that you can use when building a binary for Intel® MIC Architecture.

You can use the compiler options to:

You can use environment variables for a variety of tasks, including:

See Also


Submit feedback on this help topic