opencl初步基本理解


目录(?)
[+]

介绍

对于OpenCL来说,它的执行过程可以这样理解:一段代码,.cpp的那个是在host上面执行的,也就是那段非kernel的代码。而kernel的那段代码来说,是在设备上执行的。对于平台,设备,上下文什么的都是一些比较抽象的概念。

首先要想执行一段代码,首先就是在host上找一个可用的平台,然后找一个可用的设备。通过设备去建立上下文。通过上下文来创建命令队列。要是想执行程序的话是要在这个抽象的设备里面执行kernel之后把执行的结果在放回到host里面。

总结

1. 在平台模型中,一个主机协调在一个或多个OpenCL设备上的程序执行,平台可以看作是厂商特定的API实现的。因此,平台是上的设备只局限于厂商知晓如何进行交互的设备。如果选择A公司的平台是无法与B公司的GPU进行通信的。

2. AMD的平台不仅支持AMD自己的设备,还支持Intel的CPU。

3. host和设备之间是通过内存进行转换的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值