GPU异构编程模型

本文介绍了GPU异构编程模型,包括OpenCL的数据并行和任务并行模型,OpenCL平台的CD、CU、PE架构,以及OpenCL程序的host和device代码执行流程。同时提到了FPGA编程,如Verilog和VHDL语言,以及Xilinx和Altera的C/OpenCL到FPGA转换工具。最后,文章对比了OpenCL和OpenACC在GPU加速编程上的应用,OpenACC通过在C/C++代码中添加制导语句实现加速。
摘要由CSDN通过智能技术生成

 

OpenCL编程模型:

       数据并行模型。将数据进行划分。

       任务并行。

 

OpenCL平台模型:

host包含多个CD(计算设备),每个CD包含多个CU(计算单元),每个CU包含多个PE(处理元素)。

对应到CUDA架构:CD就是GPU,CU是streaming多处理器,PE是streaming处理器。

 

OpenCL程序:

       host代码,C/C++,运行在host上。

       device代码,OpenCL C,运行在device上。

host代码发送命令给device:传送数据(hostmemory  <--- >  device memory),执行device代码。

 

OpenCL的执行模型:

       kernel是一个函数,它代表一个work item,是计算的基本单元。它有一个PE来执行。

       多个kernel构成一个work gropu,由一个CU来执行。

      

kernel有私有内存。

workgroup有共享的局部内存。

一个CD有全局内存。

CPU有host内存。

 

 

 

 

 

 

FPGA编程

1)  Verilog和VHDL语言。

2)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值