面向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 存储器。还支持半精度以及单精度和双精度浮点。
每日推送不同科技解读,原创深耕解读当下科技,敬请关注微信公众号“科乎”。

面向OPENCL的ALTERA SDK的更多相关文章
- SPIR-V*:面向 OpenCL™ 工作负载的英特尔® 显卡编译器默认接口
英特尔® 显卡编译器最近从 SPIR* 转换到 SPIR-V*,作为面向 OpenCL™ 工作负载的中间表示.这看起来像编译器的内部变化,对用户来说不可见,但是这展示了我们支持 Khronos* 开放 ...
- 揭开Altera公司支持OpenCL的设计工具的神秘面纱
将程序中处理负荷较大的工作分配给加速器LSI的“异构计算(Heterogeneous Computing)”将踏出崭新的一步.美国Altera公司将于2013年内开始面向普通用户提供可自动由按照异构计 ...
- 基于SoCkit的opencl实验1-基础例程
基于SoCkit的opencl实验1-基础例程 准备软硬件 Arrow SoCkit Board 4GB or larger microSD Card Quartus II v14.1 SoCEDS ...
- OpenCL学习笔记(三):OpenCL安装,编程简介与helloworld
欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld. 技术交流QQ群:433250724,欢迎对算法.技术.应用感兴趣的同学加入. OpenCL安装 安装我不打算 ...
- 【并行计算-CUDA开发】FPGA 设计者应该学习 OpenCL及爱上OpenCL的十个理由
为什么要学习OpenCL呢?就目前我所从事的医疗超声领域,超声前端的信号处理器一般是通过FPGA或FPGA+DSP来设计的,高端设备用的是FPGA+ GPU架构.传统的设计方法是通过HDL语言来进行设 ...
- [重要更新][Quartus II][14.1正式版]
[Quartus II][14.1正式版] ----14.1版本最大的变化就是增加了2大系列的器件库: MAX 10和Arria 10.这2大系列据Altera中国区代理 骏龙科技的人说,就是为了和X ...
- SDAccel-FPGA将带来至多25倍单位功耗性能提升
很久没有看FPGA了,本来想继续学习HLS,就上Xilinx的网站看了看.结果发现了SDx 开发环境,很新的一个东西.由于我对这方面了解不多,本篇博文仅仅只是资料的整合和介绍. 1.SDx开发环境 X ...
- Quartus II 14.0正式版 下载链接和破解器
Windows版本 必装组件: Quartus II http://download.altera.com/akdlm/software/acdsinst/14.0/200/ib_installers ...
- 【Win10 应用开发】扫描和连接Wi-fi网络
老周今天带大家去“扫雷”了,别当真,是扫描并连接指定无线网络,时尚一点叫Wi-fi. 所以,今天的任务要求你的设备至少有1张无线网卡,目前老周没看到过有N张无线网卡的设备.像笔记本.平板等设备都可以, ...
随机推荐
- mysql备份还原
备份java代码如下: /** * 备份单个数据库 * @param dbName 数据库名称 * @return 备份成功或者失败 */ @Override public boolean backu ...
- VBA宏 合并EXCEL
1.合并多个Excel工作簿 Sub MergeWorkbooks() Dim FileSet Dim i As Integer Application.ScreenUpdating = False ...
- <代码整洁之道>、<java与模式>、<head first设计模式>读书笔记集合
一.前言 几个月前的看书笔记 ...
- 【工作常用代码集】批量Telnet远端端口
作者:gnuhpc 出处:http://www.cnblogs.com/gnuhpc/ __author__ = 'gnuhpc' import telnetlib,socket IP={} def ...
- ImageMagick Remote Command Execute
CVE ID: CVE-2016-3714 我挺纠结应该用中文写博客还是应该用英文写博客.英文吧作用挺明显的,可以锻炼自己的英语表达能力,但是可能会阻碍和一些英文不好的朋友交流. It's upset ...
- 《2016ThoughtWorks技术雷达峰会----变革的原因》
变革的原因 张松 ,ThoughtWorks中国区总经理 首先回顾IT历史,观点如下: 1.在80,90年代,IT作为一个种生产效率的提高工具,主要是把手工的活动自动化.以client se ...
- 分布式系统理论之Quorum机制
一,Quorum机制介绍 在分布式系统中有个CAP理论,对于P(分区容忍性)而言,是实际存在 从而无法避免的.因为,分布系统中的处理不是在本机,而是网络中的许多机器相互通信,故网络分区.网络通信故障问 ...
- Android 实现页面的延时跳转
Android APP在初次使用的时候往往会出现APP的首页标志,然后几秒之后进入导航页,今天就记录一下,首页的延时跳转的两种方法: 第一种使用Handler延时跳转,在onCreate的方法中加入一 ...
- JavaScript RegExp 对象
JavaScript RegExp 对象 RegExp 对象用于规定在文本中检索的内容. 什么是 RegExp? RegExp 是正则表达式的缩写. 当您检索某个文本时,可以使用一种模式来描述要检索的 ...
- [No00000D]word如何批量删除超链接 怎么去掉网址保留文字
1.删除超链接的文字及网址 这种情况是想把带有网址的文字统统删掉,文字和网址一概不留. 首先在word界面按下ALT+F9(在所有的域代码及其结果间进行切换.),超链接文本会被转换成代码的样式. 例如 ...