Intel® FPGA SDK for OpenCL™ Software Technology

An Intuitive Design Environment

  • Dynamic Profiling via Intel® VTune analysis.
  • Improved utilization and padding to reduce local memory usage for depths that are not a power of two.

Meeting Performance Requirements

  • Improved reporting and pragmas for fine-tuned control over loop fusion to merge sequential loops at the same level to improve throughput and reduce area.
  • Enabled stall enable clusters pragma to reduce local memory usage by removing FIFO instantiations and latency between functions.

The OpenCL™ standard is the first open, royalty-free, unified programming model for accelerating algorithms on heterogeneous systems. OpenCL™ application allows the use of a C-based programming language for developing code across different platforms, such as CPUs, GPUs, and FPGAs. A key benefit of OpenCL™ application is that it is a portable, open, royalty-free standard, which is a key differentiator versus proprietary programming models. OpenCL™ standard is a programming model for software engineers and a methodology for system architects. It is based on standard ANSI C (C99) with extensions to extract parallelism. OpenCL™ platform also includes an application programming interface (API) for the host to communicate with the hardware accelerator traditionally over PCI Express* or one kernel to communicate with another without host interaction. Intel® FPGA SDK for OpenCL™ software technology provides a vendor extension, an I/O, and a Host Channel API to stream data into a kernel directly from a streaming I/O interface such as 10 GB Ethernet.

In order to create and run applications in the Intel® FPGA SDK for OpenCL™ software technology, you need to either use an Intel or partner provided BSP or create your own BSP (see links in ‘Getting Started’ section). A board support package (BSP) is a collection of libraries and drivers that will form the lowest layer of your application software stack. Your Software Applications must link against or run on top of a given software platform.

To find reference BSPs, see the “Getting Started” section.

The following development kits have an available BSP:

  • Intel® Stratix® 10 GX
  • Stratix® V
  • Intel® Arria® 10 SoC
  • Intel® Arria® 10 GX

OpenCL™ design examples are part of the Intel® FPGA SDK for OpenCLTM software technology. You can find the design example folder at <OpenCL_Installation_Directory>/examples_aoc.

Product and Performance Information


OpenCL and the OpenCL logo are trademarks of Apple Inc. used by permission by Khronos.