GPU多线程运算

 

当前,GPU的浮点矢量运算速度仍然远快于CPU,如图1,这主要是因为CPU是通用处理器,除了运算之外还要完成许多调度任务,而GPU任务单一,GPU采用SIMD方式,而且有数百个执行单元,特别适合基于数据分块的并行运算。

   

以前要利用GPU运算主要通过shader语言,如NVcg,将数组加载到硬件纹理单元进行运算。如今,NV推出一种专用API CUDA,专门用于数值运算,这样便可以更容易的利用GPU的资源进行计算。

    从长远来看,基于CPU的并行运算仍是主流,现在CPU厂商在不停的提高并行运算效率,增加更多的执行核。所以对于广大算法研究者来说,以后并行计算将成为主流。

你可能感兴趣的:(多线程,算法,api,CUDA,任务,shader)