面向OPENCL的ALTERA SDK

面向OPENCL的ALTERA SDK

使用面向开放计算语言 (OpenCL?) 的?Altera??SDK,用户可以抽象出传统的硬件 FPGA 开发流程,采用更快、更高层面的软件开发流程。在基于 x86 的主机上迅速完成 OpenCL 加速器代码仿真,获得详细的优化报告,包括专门的算法流水线相关信息,缩短编译时间,直至得到满意的内核代码结果。利用预先编写的最优?OpenCL?或者?RTL?功能,从主程序调用它们,或者直接从您的?OpenCL?内核调用它们。

什么是 OpenCL?

OpenCL 标准是第一个开放、免版税、统一的编程模型,能够在异构系统上加速算法实现。OpenCL 支持在不同的平台上使用基于 C 的编程语言来开发代码,例如,中央处理单元 (CPU)、图形处理单元 (GPU)、数字信号处理器 (DSP),以及现场可编程门阵列 (FPGA)。

对于软件工程师而言,OpenCL 是编程模型,对于系统规划人员而言则是一种方法。它基于标准 ANSI C (C99),扩展了并行功能。OpenCL还包括应用程序接口 (API),一般通过 PCI Express? 实现主机与硬件加速器的通信,或者一个内核与另一个没有主机控制的内核进行通信。除此之外,作为供应商扩展功能,Altera 还提供 I/O 通道 API,将数据从 10Gb 以太网等流 I/O 接口直接输入到内核中。OpenCL 的关键优势在于它是可移植、开放、免版税的标准,这也是它与专用编程模型的关键不同。

在 OpenCL 模型中,用户规划任务来控制队列,每个器件至少有一个队列。OpenCL 运行时功能会将数据并行任务分解成片,将其发送给器件中的处理单元。这是主机与任何硬件加速器进行通信的方法。由每一硬件加速器供应商抽象出供应商相关的内容。面向 OpenCL 的 Altera SDK 完成这一工作,并且符合 OpenCL 1.0 标准。

关于 OpenCL 1.0 标准的详细信息,请参考 Khronos 的OpenCL 规范。Khronos 集团的很多供应商都支持 OpenCL。如果需要了解其他信息,请访问http://www.khronos.org/opencl/

什么是面向 OpenCL 的 Altera SDK?

面向 OpenCL 的 Altera SDK 抽象出复杂的 FPGA 设计,支持软件编程人员采用基于 ANSI C 语言的 OpenCL C 来编写硬件加速内核函数,并支持其他的 OpenCL 结构,方便了在 FPGA 上实现应用程序。作为我们 SDK 的一部分,我们提供全套工具让软件编程人员更快速的完成开发流程,这包括:

  • 在 x86 上单步调试代码的仿真器,确保了正常工作。
  • 详细的优化报告,以理解负载和存储内部循环的相关性。
  • 显示内核内部性能的分析器,保证了正确的存储器合并以及无阻塞硬件流水线。
  • OpenCL 编译器,能够在一个步骤中对内核代码进行 300 次优化,产生整个 FPGA 镜像。

面向 OpenCL 的 Altera SDK 已经全面投产,使得 Altera 成为解决方案符合 OpenCL 规范的第一家 FPGA 公司。面向 OpenCL 的 Altera SDK 支持各种主 CPU,包括 SoC 器件中的嵌入式 ARM??Cortex?-A9 处理器内核、IBM Power 系列处理器以及标准 x86 CPU 等。面向 OpenCL 的 Altera SDK 在多个 FPGA 和多块电路板以及各种存储器目标上支持可扩展解决方案,例如,可进行顺序存储器访问的 DDR SDRAM,进行随机存储器访问的 QDR SRAM,或者支持低延时存储器访问的 FPGA 存储器。还支持半精度以及单精度和双精度浮点。

时间: 2024-10-10 08:18:09

面向OPENCL的ALTERA SDK的相关文章

Visual Studio 2013和Intel SDK for OpenCL 6.1环境搭建

一. OpenCL安装,设置和使用 1. OpenCL是什么? OpenCL(全称Open Computing Language,开放运算语言)是第一个面向异构系统通用目的并行编程的开放式.免费标准,也是一个统一的编程环境,便于软件开发人员为高性能计算服务器.桌面计算系统.手持设备编写高效轻便的代码,而且广泛适用于多核心处理器(CPU).图形处理器(GPU).Cell类型架构以及数字信号处理器(DSP)等其他并行处理器,在游戏.娱乐.科研.医疗等各种领域都有广阔的发展前景.OpenCL是一个为异

OpenCL学习笔记(三):OpenCL安装,编程简介与helloworld

OpenCL安装 安装我不打算花篇幅写,原因是OpenCL实在是可以太多的平台+环境下实现了,包括GPU和FPGA,以及不同的器件支持,在这里我主要把网上可以找到比较不错的经验贴列一下,方便大家,我主要关注了FPGA的,其他GPU的大家网上搜搜吧: altera opencl sdk下载: https://www.altera.com.cn/products/design-software/embedded-software-developers/opencl/overview.html alt

基于SoCkit的opencl实验1-基础例程

基于SoCkit的opencl实验1-基础例程 准备软硬件 Arrow SoCkit Board 4GB or larger microSD Card Quartus II v14.1 SoCEDS v14.1 Altera SDK for OpenCL v14.1 (A license for these tools.There are 60-day evaluation licenses available via your FAE. You will need to provide a N

JDK,SDK,JRE概念

JDK与jre jdk是面向开发人员使用的sdk,给java提供开发环境和运行development kit,指的是软件开发包,包括函数库,编译程序等,jdk就是java development kit 而jre指的是java runtime envirment,指的是java的运行环境,面向java程序. SDK与JDK SDK是software development kit的缩写,软件开发工具包,辅助开发某一类软件的相关文档,范例,和工具的一系列文件的组合,它为软件的开发提供一个平台. J

[重要更新][Quartus II][14.1正式版]

[Quartus II][14.1正式版] ----14.1版本最大的变化就是增加了2大系列的器件库: MAX 10和Arria 10.这2大系列据Altera中国区代理 骏龙科技的人说,就是为了和Xilinx打价格战的,其中MAX 10系列结构与性能和Cyclone IV差不多,价格更低,而且可以加密,集成了2个配置器件,Cyclone V系列是Cyclone最后一代产品了,从MAX 10开始Cyclone和MAX就合并了,以后都叫MAX了,都是FPGA集成高速配置器件的结构.Arria 10

SDAccel-FPGA将带来至多25倍单位功耗性能提升

很久没有看FPGA了,本来想继续学习HLS,就上Xilinx的网站看了看.结果发现了SDx 开发环境,很新的一个东西.由于我对这方面了解不多,本篇博文仅仅只是资料的整合和介绍. 1.SDx开发环境 Xilinx官网这样解释SDx:SDx™ 是一种面向系统和软件工程师的开发环境. SDx 让没有 FPGA 专业知识的系统和软件工程师也能通过使用高层次编程语言,来获益于带有业界标准处理器的可编程硬件的强大威力.SDAccel 是首个面向 OpenCL.C 和 C++进行架构优化的编译器,并结合了#库

Quartus II 14.0正式版 下载链接和破解器

Windows版本 必装组件: Quartus II http://download.altera.com/akdlm/software/acdsinst/14.0/200/ib_installers/QuartusSetup-14.0.0.200-windows.exe   1.45GBhttp://download.altera.com/akdlm/software/acdsinst/14.0/200/ib_installers/QuartusHelpSetup-14.0.0.200-win

Vitamio

一,Vitamio 是什么? Vitamio 是一款 Android 与 iOS 平台上的全能多媒体开发框架,全面支持硬件解码与 GPU 渲染.Vitamio 凭借其简洁易用的 API 接口赢得了全球众多开发者的青睐.到目前,全球已经有超过 一万 种应用在使用 Vitamio,覆盖用户超过 5亿 . Vitamio 能够流畅播放720P甚至1080P高清MKV,FLV,MP4,MOV,TS,RMVB等常见格式的视频,还可以在 Android 与 iOS 上跨平台支持 MMS, RTSP, RTM

高速建成Android开发环境ADT-Bundle和Hello World

----下载JDK(Java Dev Kit) 官方下载:http://www.oracle.com/technetwork/java/javase/downloads/index.html 兴许步骤:https://docs.oracle.com/javase/8/docs/ 安全后查看 <JDK与JRE的不同以及含义>:http://www.pc6.com/infoview/Article_53547.html 1. JVM - java virtual machine! JVM是我们常说