图形处理器(Graphics Processing Unit,简称GPU)每秒能够进行数以亿次的计算,目前其已成为一种性能十分惊人的器件。通常,GPU主要用来承担实时图形渲染中的海量数学运算,然而,其潜在的计算能力也可用于处理与图形无关的任务。
  CUDA与OpenCL早已能够基于GPU实现并行计算,而OpenGL与DirectX也分别于OpenGL4.3与DirectX11版本后能够通过计算着色器的方式基于GPU实现并行计算。从图中可以看到,计算着色器是独立与通常的渲染管线的。

CUDA:NVIDIA推出的通用并行计算架构,该架构能够使用GPU解决复杂的计算问题。
OpenCL:针对异构系统进行并行编程的一个全新API,能够利用GPU进行并行计算。

1. CPU与GPU

前面提到了计算着色器能够基于GPU实现并行计算,从而提升计算能力,那么GPU到底独特在哪呢?为什么又比CPU的计算速度还要快?
  理解CPU与GPU之间区别的一种简单方式是比较他们是如果处理任务的:

  • CPU 由专为顺序串行处理而优化的几个核心组成,其需要很强的通用性来处理各种不同的数据类型,除此之外逻辑判断会引入大量的分支跳转和中断处理,使得CPU的内部结构异常复杂。
  • GPU 拥有一个由数以千计的更小、更高效的核心(专为同时处理多重任务而设计)组成的大规模并行计算架构。

其中,绿色是计算单元,橙红色是存储单元,橙黄色是控制单元。
  GPU采用了数量众多的计算单元和超长的流水线,但只有非常简单的逻辑控制并省去了Cache;而CPU不仅被Cache占据了大量空间,还有很复杂的控制逻辑和诸多优化电路,相比之下计算能力只是GPU很小的一部分。

计算着色器(Compute Shader)相关推荐

  1. Directx 计算着色器(compute shader)

    原文 :http://www.cnblogs.com/Ninputer/archive/2009/12/11/1622190.html 博者注:计算着色器调试(http://msdn.microsof ...

  2. OpenGL之计算着色器(Compute Shader)注解

    一.前言 关于计算着色器,我也是刚试验成功,所以接下来我也讲不出什么长篇大论,概念什么的百度一下到处都是,我这边只讲讲百度没有的填坑经历吧. 二.计算着色器的语法解释 先附上一个计算着色器的代码段: ...

  3. 计算着色器(Compute Shaders)

    原文 : https://catlikecoding.com/unity/tutorials/basics/compute-shaders/ 1 将工作转移到GPU(Moving Work to th ...

  4. OpenGL深入探索——《OpenGL编程指南(原书第8版)》——计算着色器

    转载自 <OpenGL编程指南(原书第8版)>--计算着色器 概述 由于图形处理器每秒能够进行数以亿计次的计算,它已成为一种性能十分惊人的器件.过去,这种处理器主要被设计用于承担实时图形渲 ...

  5. Unity Shader:细分着色器(Tessellation Shader)在Unity顶点着色器中的写法以及各参数变量解释

    图1:在Unity内将sphere细分后 图2:在Unity内将sphere细分后 Unity官网关于细分着色器的资料比较少,只有在Surface Shader中使用的例子.我看了下Surface S ...

  6. OpenGL Compute Shader计算着色器的实例

    OpenGL Compute Shader计算着色器 先上图,再解答. 完整主要的源代码 源代码剖析 先上图,再解答. 完整主要的源代码 // #define USE_GL3W #include &l ...

  7. OpenGL Compute Shader Raytracing 计算着色器光线追踪的实例

    OpenGL Compute Shader Raytracing 计算着色器光线追踪 先上图,再解答. 完整主要的源代码 源代码剖析 先上图,再解答. 完整主要的源代码 // #define USE_ ...

  8. OpenGL Compute Shader Particle System计算着色器粒子系统的实例

    OpenGL Compute Shader Particle System计算着色器粒子系统 先上图,再解答. 完整主要的源代码 源代码剖析 先上图,再解答. 完整主要的源代码 #include &l ...

  9. OpenGL Compute Shader Image Processing计算着色器图像处理的实例

    OpenGL Compute Shader Image Processing计算着色器图像处理 先上图,再解答. 完整主要的源代码 源代码剖析 先上图,再解答. 完整主要的源代码 #include & ...

  10. OpenGL ES3.1使用计算着色器(Compute Shader)

    OpenGL ES3.1使用计算着色器(Compute Shader) 1.基本介绍 OpenGL ES从3.1版本开始支持计算着色器         工作模型有全局工作组和本地工作组,全局工作组包含 ...

最新文章

  1. 以实用著称的《PHP与MySQL程序设计(第3版)》问世啦!
  2. GDB中遍历art::Thread打印local reference的脚本
  3. 共享内存 传一个类指针_C++指针
  4. Codis集群的搭建与使用
  5. java变量用来干嘛_Java
  6. oracle安装要多久,一次耗时4天的oracle安装过程
  7. 数据结构学习笔记:实现链表
  8. python绘制函数曲线x2sin(x2-x-2)_下面哪几个选项中的语句能够完成用fplot语句来绘制函数y=x^3+2*x^2+sin(x)在区间[-5,5]上的图形。...
  9. sql 练习网站答案解析
  10. 共享一个可用的谷歌相机
  11. Nodejs页面访问加载静态资源
  12. 搭建SPA项目SPA项目中使用路由嵌套路由
  13. 计算机视觉方向相关文献下载
  14. Chrome浏览器设置护眼模式(离线安装插件)
  15. 2014年元旦放假安排,又一个坑爹的假日
  16. 【论文阅读】GaitSet: Regarding Gait as a Set for Cross-View Gait Recognition
  17. zzulioj:1093: 验证哥德巴赫猜想(函数专题)
  18. wps表单小程序 服务器错误,微信小程序WPS表单怎么在钉钉使用
  19. 孩子爱收集“小破烂”?谁还没点收藏的癖好呢
  20. 2022 leetcode 春季赛 LCP 53. 守护太空城

热门文章

  1. 局域网助手_合同助手新增功能介绍
  2. 公开课计算机原理,《计算机的基本工作原理》公开课材料
  3. iOS Jenkins自动化打包
  4. flink笔记8(接笔记7——窗口(Window),迟到数据的处理)
  5. 控制台游戏7-泡泡堂
  6. Quartus-II两种方式实现D触发器及时序仿真和波形验证
  7. wp7(windows phone 7 )开发者帐号注册,dreamspark注册,edu.cn节约99刀
  8. 分布式与集群的区别究竟是什么?
  9. 机动战士敢达ol服务器链接中断,机动战士敢达OL延迟掉线画面卡解决办法
  10. 邦纳光电传感器QS18VN6R