从异构软件开发者的角度看异构计算

本文从软件开发者的角度探讨异构计算,包括异构计算平台如CPU+GPU的特性,以及异构软件开发中的OpenCL和指导语句编程方式,如OpenHMPP和OpenACC,旨在帮助开发者理解和应用异构计算。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

越来越多的人正在关注异构计算,为了发表一点个人理解和看法,本文将从一个开发者的角度阐述一下自己的观点。期待大家的批评指正。


异构计算平台

越来越多的主流媒体,出版物都在花时间向大家传递一个信息——异构计算已经并可能在相当长的一段未来时期中主宰计算平台[1,2]。那到底什么是异构计算呢?

 

作为软件开发者,我认为异构计算就是在异构平台上执行计算,因此我们应该先对异构的计算平台有一定理解,然后在了解如何在异构平台上执行计算。那到底什么是异构平台呢?首先我们知道现在有很多可以用于计算的单元,诸如CPU,GPU,MIC,DSP,FPGA等等,如果在同一个计算机系统中加入不同的计算单元,那么组成的这个计算机系统就可以认为是一个异构的计算平台。大多数人认为现在比较成熟的异构平台是CPU+GPU的计算平台,原因在于两点:越来越多的用户开始使用这种平台;这种异构的计算平台的性能在top *百中屡有佳绩。当然这两点原因看上去联系也很密切。

 

关于CPU+GPU的这种计算平台,目前也有多种存在形式,根据是否共享内存可以分为两种:CPU与GPU共享内存,比如AMD的APU,目前AMD将CPU和GPU共享同一块内存,但是CPU的线程不能和GPU的线程共享同一块数据,在HPCChina2012上,AMD表示不久的将来他们会完成CPU线程与GPU线程共享数据,作为开发者我们也期望那一天再点到来;另一种就是CPU和GPU完全保有独立的存储单元,他们之间使用PCIE通信,这是Nvidia正在做的,Nvidia还在继续努力的提高GPU计算单元的访存和计算速度,以及计算单

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值