渲染
渲染是从使用计算机程序模型生成图像的过程。在图形中,一个虚拟场景是使用像几何,视点,纹理,光照和阴影,这是通过一个渲染程序传递信息描述。此呈现程序的输出将是一个数字图像。
有两种类型的渲染 -
-
软件渲染 − 所有的渲染是在CPU的帮助下计算完成。
-
硬件渲染 − 所有的图形计算都由GPU(图形处理单元)完成的。
渲染可以在本地或远程上进行。如果所要呈现的图像太复杂,则呈现远程具有足够的渲染复杂场景所需的硬件资源可以在专用服务器上完成。它也被称为基于服务器的绘制。渲染也可以通过在本地CPU完成。这就是所谓基于客户端的渲染。
WebGL如下基于客户端的呈现方式来呈现3D场景。所有获得图像所需要的处理是使用客户端的图形硬件在本地执行。
GPU
根据NVIDIA,一个GPU就是“使用集成在一块芯片处理器转换,光线,三角形设置/剪辑和渲染处理能力最低为每秒10百万个多边形的引擎。”
不同于多核心处理器,使用顺序处理优化过的几个核,GPU由数千个较小的内核,高效地处理并行工作负载。因此GPU加速旨在用于输出到显示器建立在一个帧缓冲器的图像(压头的一部分,其含有完整的帧数据)。
GPU加速计算
在GPU加速计算,应用程序被装载到CPU。每当遇到代码的计算密集型部分,则该部分的代码将被加载运行在GPU上。它可以使系统以处理图形以更有效的方式来。
GPU有一个单独的存储器,它运行的代码的一小部分一次处理多个副本。 GPU处理所有这些是在它的本地存储器,而不是在中央存储器中的数据。因此,所需要的数据由GPU应加载/复制到GPU存储器,然后进行处理。
在具有上述结构的系统中,CPU和GPU之间的通信开销应减少以实现更快的处理3D程序。对于这一点,我们必须复制所有数据,并保持它在GPU上,而不是与GPU反复沟通。