并行计算及GPU简介

218 篇文章 53 订阅

       并行计算(Parallel Computing)指同时使用多种计算资源解决计算问题的过程,它的基本思想是将待求解问题分解成多个子问题,在相同的时间用不同的处理器计算各个子问题,从而有效地节约计算的时间。早期的并行计算只能由专门设计的大型并行计算机或是多个计算机构成的集群完成。但拥有众多处理器的大型并行计算机往往制造成本昂贵、使用功耗巨大,因此在一般的研究过程中实用性不强。利用图形处理器,也就是我们常说的GPU进行并行计算正在成为发展趋势。

        同名字一样,GPU起初的设计目的是辅助CPU完成图像渲染等计算机图形学功能。由于图像渲染等相关问题具有高度并行的特点,因此GPU与CPU的硬件设计理念是不同的。CPU将更多的资源(晶体管)用到控制(Control)及缓存(Cache)部分,而GPU则将更多的资源用于计算单元(ALU),如图3-1所示。

       GPU与CPU硬件架构上的区别导致了它们在计算中的优势不同:CPU拥有更加完备的逻辑与缓存单元,因此更加适用于计算不规则的数据结构、不可预测的存取模式与单线程程序;而GPU拥有更多的并行计算单元,因此更加擅长处理规则数据结构、可预测存取模式与多线程的程序。

       随着硬件及相关软件体系的不断完善,GPU的应用已不再局限于计算机图形处理,基于GPU的通用并行计算研究引发了广泛的关注。在图像处理、视频播放、信号处理、金融分析、石油勘探及天文计算等领域中,基于GPU的并行计算正逐渐成为人们提高运算效率的一个重要手段。但早期将GPU用于计算的方法十分复杂, OpenGL与DirectX等图形接口是研究人员与GPU交互的唯一方式,这就要求研究人员拥有极为丰富的图形接口编程知识,这一点极大地限制了基于GPU的并行计算的发展。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fpga和matlab

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值