opencl基础概念之并行

来源:互联网 发布:单片机控制蓝牙模块 编辑:程序博客网 时间:2024/06/06 03:52


编程模型:

并行的模型有很多,最简单的是数据并行和任务并行,从上层来讲最容易解决

数据并行例子:输入一个数字返回其平方。。输入的数字就是并行的数据,调用同一任务计算返回。

任务并行例子:

1. 如果任务是相互独立的,那很简单

2. 如果任务是相互关系的,如一个任务的执行依赖于上个任务的完成,那就要考虑负载均衡问题

如下图,一个大工作可以分化为6个任务,但因为任务1的运行时间远远大于其他任务,所以可以将任务1运行在单独一个PE上,而另外几个合成两个PE,从而保持每个PE间的工作时间大致相同,才能发挥多任务的优势。这就是均衡问题了。



硬件模型:

本质是影射到实际硬件运行,比较复杂,以后总结



原创粉丝点击