欢迎大家赞助一杯啤酒🍺 我们准备了下酒菜:Formal mathematics/Isabelle/ML, Formal verification/Coq/ACL2, C++/F#/Lisp
OpenCL
来自开放百科 - 灰狐
(版本间的差异)
小 (→文档) |
小 (→项目) |
||
(未显示1个用户的3个中间版本) | |||
第15行: | 第15行: | ||
==项目== | ==项目== | ||
+ | *[https://github.com/topics/opencl OpenCL GitHub Topics] | ||
*[[DeepCL]] | *[[DeepCL]] | ||
+ | *[[Haskell]] high-level wrapper for [https://hackage.haskell.org/package/OpenCL OpenCL] | ||
+ | *[https://github.com/opentk/opentk OpenTK] Open Toolkit library is a fast, low-level [[C Sharp|C#]] wrapper for [[OpenGL]], [[OpenAL]] & OpenCL. | ||
==文档== | ==文档== | ||
第23行: | 第26行: | ||
==图集== | ==图集== | ||
+ | <gallery> | ||
+ | image:OpenCL-as-Parallel-Language-Backend.png|OpenCL作为后端 | ||
+ | image:SPIR-V-Ecosystem.png|SPIR-V生态 | ||
+ | </gallery> | ||
==链接== | ==链接== |
2022年3月11日 (五) 06:18的最后版本
您可以在Wikipedia上了解到此条目的英文信息 OpenCL Thanks, Wikipedia. |
Open Computing Language (OpenCL)
目录 |
[编辑] 简介
OpenCL 标准是第一个开放、免版税、统一的编程模型,能够在异构系统上加速算法实现。OpenCL 支持在不同的平台上使用基于 C 的编程语言来开发代码,例如,中央处理单元 (CPU)、图形处理单元 (GPU)、数字信号处理器 (DSP),以及现场可编程门阵列 (FPGA)。
对于软件工程师而言,OpenCL 是编程模型,对于系统规划人员而言则是一种方法。它基于标准 ANSI C (C99),扩展了并行功能。OpenCL 还包括应用程序接口 (API),一般通过 PCI Express 实现主机与硬件加速器的通信,或者一个内核与另一个没有主机控制的内核进行通信。除此之外,作为供应商扩展功能,我们还提供 I/O 通道 API,将数据从 10Gb 以太网等流 I/O 接口直接输入到内核中。OpenCL 的关键优势在于它是可移植、开放、免版税的标准,这也是它与专用编程模型的关键不同。
在 OpenCL 模型中,用户规划任务来控制队列,每个器件至少有一个队列。OpenCL 运行时功能会将数据并行任务分解成片,将其发送给器件中的处理单元。这是主机与任何硬件加速器进行通信的方法。由每一硬件加速器供应商抽象出供应商相关的内容。面向 OpenCL 的 英特尔 FPGA SDK 完成这一工作,并且符合 OpenCL 1.0 标准。
[编辑] 指南
[编辑] 项目
- OpenCL GitHub Topics
- DeepCL
- Haskell high-level wrapper for OpenCL
- OpenTK Open Toolkit library is a fast, low-level C# wrapper for OpenGL, OpenAL & OpenCL.
[编辑] 文档
- Creating Dense Mixed GPU and FPGA Systems With Tegra K1 Using OpenCL
- In-Depth Performance Analysis for OpenACC/CUDA/OpenCL Applications with Score-P and Vampir
- Parallelism with OpenCL in Bee Smalltalk
[编辑] 图集
[编辑] 链接
分享您的观点