GPU特征处理技术

GPU和CPU有何不同?

现代片上系统(SoC)通常集成中央处理器(CPU)和图形处理器(GPU)。设计不同,这可能更取决于处理的数据集的类型。

CPU经过优化,可以一次对几块数据执行大量分支任务。在CPU上运行的线程通常是唯一的,并且是独立执行的,通常独立于所有其他线程。任何给定的处理元素都将在单个线程中进行处理。CPU上程序的典型线程数通常为1到8个,在任何时间段内最多为几十个。

GPU经过优化,工作原理是同一段代码将在多个线程中执行,通常数为数百万,以处理当今设备的大屏幕分辨率。这些线程只在输入上不同,通常遵循完全相同的执行步骤。

并行性

每个图形处理器在多线程上以单指令多数据(SIMD)处理的形式,并发执行同一条指令。

SIMD体系结构的主要优点,对于结构正确的应用程序,可以并行运行大量线程,效率极高。SIMD体系结构通常能够同时运行比典型CPU多几个数量级的线程。

SIMD设计用于处理大的相干数据集,在这类任务中表现得非常出色。因此,在大型相干数据集上独立运行的算法(如图形和图像处理),非常适合这种处理器类型。

矢量和标量处理

现代图形核心体系结构具有多个基于矢量或标量的处理单元。都受不同版本的PowerVR体系结构支持–Series 5 supporting vector,以及Series 6、Series 7和Series 8 supporting scalar。

标量处理单元对每个处理单元的单个值进行操作。

向量处理单元对每个处理单元处理多个值。

矢量

向量处理可以非常有效,因为执行单元可以同时处理多个值,而不是只处理一个值。对于颜色和顶点操作,这种类型的架构是非常有效的。因此,传统的渲染操作非常适合这种体系结构,因为计算通常同时对三个或四个元素进行操作。

向量体系结构的主要缺点是,如果使用标量值或小于处理器期望值的向量,则会浪费额外的处理元素宽度。最常见的向量宽度是4,这意味着主要操作三个分量向量的着色器或内核将以75%的效率操作这些指令。一次只在一个标量上工作的着色器可能会将这个数字降低到25%。这会浪费能源和性能,因为处理器的某些部分没有做任何工作。可以通过矢量化代码对此进行优化,但这会增加程序员的负担。

标量

标量处理器在每个硬件周期可以执行的操作方面往往更加灵活,因为不需要用数据填充额外的处理宽度。虽然向量架构可能在同一个硅区域中处理更多的值,但对于非向量化代码,在标量架构中每个时钟的实际有用结果数通常会更高。标量体系结构往往更适合于通用处理和更高级的渲染技术。

关于消除混叠反采样

该技术引入了GRLAA(Gradient Line Anti-Aliasing,梯度线消除混叠),这是一种相对简单有效的方法,用于处理汽车导航应用中经常出现的混叠线。

在信号处理学科中,有一个特定的采样频率称为奈奎斯特频率。当以低于奈奎斯特频率的频率对信号进行采样时,从这些采样重构的信号与原始信号不同。原始信号和重构信号之间的差异表现为伪影。这种效果称为“混叠”。

本文讨论了计算机图形学中两种最常见的混叠现象。第一种是“锯齿状”(下图1),这里原本是一条对角线的直线,看起来像锯齿状的楼梯。这是由图形卡的“光栅化器阶段”引入的,将“中间”像素渲染为开或关。

第二种是采样混叠。这是当一个高频(快速变化的)纹理被用来渲染远处的某物时,比如图2中的棋盘格图案,并且似乎创建了被称为moir的可见人工制品模式。

有几种算法可用于消除可见锯齿的数量,并去除staircase上的伪影artefacts。但是,这些算法可能会产生适中的性能成本,这取决于它所部署的硬件。

超级采样消除混叠(SSAA)。这是一种暴力技术,比最终分辨率高出整数倍(x2,x4)的分辨率渲染整个场景,然后对整个帧缓冲区进行下采样,产生所需的最终分辨率。结果,锯齿和纹理伪影采样,进行优良的质量和改善,但技术显然是极其昂贵的。渲染成本(包括光栅操作、片段操作和相关带宽)乘以分辨率乘数的平方,即x4表示x2 SSAA,x16表示x4等

多采样消除混叠(MSAA)。这种技术通过将图像渲染到一个缓冲区,增加每个像素的采样数,该缓冲区能够存储每个像素的多个采样。然后解析该缓冲区,生成与viewport分辨率匹配的输出。这在PowerVR硬件上非常有效,因为解析是在芯片上执行的,节省了宝贵的内存带宽。MSAA改善了锯齿,但没有对伪影进行采样。

基于着色器的技术,如快速近似消除混叠(FXAA)或亚像素形态,消除混叠(SMAA)。这两种技术分析检测和模糊锐化的几何特征。在屏幕空间中执行的后处理算法,通常具有固定的成本(一次全屏传递),但需要更多的内存带宽,这在移动和嵌入式设备上通常是额外的。

GPU特征处理技术的更多相关文章

  1. 目标检测中特征融合技术(YOLO v4)(下)

    目标检测中特征融合技术(YOLO v4)(下) ASFF:自适应特征融合方式 ASFF来自论文:<Learning Spatial Fusion for Single-Shot Object D ...

  2. 目标检测中特征融合技术(YOLO v4)(上)

    目标检测中特征融合技术(YOLO v4)(上) 论文链接:https://arxiv.org/abs/1612.03144 Feature Pyramid Networks for Object De ...

  3. HTML5须知的特征和技术

    1.新的Doctype XHTML文档类型 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &q ...

  4. qGPU on TKE - 腾讯云发布下一代 GPU 容器共享技术

    背景 qGPU 是腾讯云推出的 GPU 共享技术,支持在多个容器间共享 GPU卡,并提供容器间显存.算力强隔离的能力,从而在更小粒度的使用 GPU 卡的基础上,保证业务安全,达到提高 GPU 使用率. ...

  5. 深度神经网络DNN的多GPU数据并行框架 及其在语音识别的应用

    深度神经网络(Deep Neural Networks, 简称DNN)是近年来机器学习领域中的研究热点,产生了广泛的应用.DNN具有深层结构.数千万参数需要学习,导致训练非常耗时.GPU有强大的计算能 ...

  6. 【深度学习系列2】Mariana DNN多GPU数据并行框架

    [深度学习系列2]Mariana DNN多GPU数据并行框架  本文是腾讯深度学习系列文章的第二篇,聚焦于腾讯深度学习平台Mariana中深度神经网络DNN的多GPU数据并行框架.   深度神经网络( ...

  7. 国内云计算的缺失环节: GPU并行计算(转)

    [IT时代周刊编者按]云计算特有的优点和巨大的商业前景,让其成为了近年来的IT界最热门词汇之一.当然,这也与中国移动互联网的繁荣紧密相关,它们需要有相应的云计算服务作为支撑.但本文作者祁海江结合自身的 ...

  8. CBIR--Survey.C/GPU优化.Sys搭建

    一:CBIR综述:转自于wiki:http://zh.wikipedia.org/wiki/CBIR 参考链接:http://blog.csdn.net/kezunhai/article/detail ...

  9. 高德SD地图数据生产自动化技术的路线与实践(道路篇)

    一.背景及现状 近些年,国内道路交通及相关设施的基础建设日新月异.广大用户日常出行需求旺盛,对所使用到的电子地图产品的数据质量和现势性提出了更高的要求.传统的地图数据采集和生产过程,即通过采集设备实地 ...

随机推荐

  1. 网络广告计费方式CPM、CPA、CPS、CPT、CPC及比较分析

    网络上的广告计费方式,主要有以下几种: 按展现付费(CPM).每展现一千次,收费多少. 按点击付费(CPC).每带来一个点击收多少钱. 按时间付费(CPT).每放一天或者几个小时,收费多少. 按效果付 ...

  2. Thinkphp树形菜单相关方法

    1 <?php 2 3 /** 4 * Menu(菜单管理) 5 */ 6 namespace Admin\Controller; 7 use Common\Controller\Adminba ...

  3. 360加固保so动态脱壳

    环境及工具 手机    : 中兴 U887 系统版本:   Android 2.3.5 工具    :   IDA pro 6.6 .0101Editor 目前so加壳有很多家,我己知的有 爱加密,梆 ...

  4. android CVE

    本文收集网上android cve的一些分析供后续学习: Android uncovers master-key:android1.6-4.0 由于ZIP格式允许存在两个或以上完全相同的路径,而安卓系 ...

  5. 9.PHP文件处理

    PHP文件系统 (当成是扩展C++来看就行了,几乎一样): 读取整个文件readfile() .file(). file_get_contents() <?php    readfile('fi ...

  6. Intel汇编语言程序设计学习-第三章 汇编语言基础-下

    3.4  定义数据 3.4.1  内部数据类型 MASM定义了多种内部数据类型,每种数据类型都描述了该模型的变量和表达式的取值集合.数据类型的基本特征是以数据位的数目量的大小:8,16,32,,48, ...

  7. 【JavaScript】Leetcode每日一题-矩形区域不超过K的最大值和

    [JavaScript]Leetcode每日一题-矩形区域不超过K的最大值和 [题目描述] 给你一个 m x n 的矩阵 matrix 和一个整数 k ,找出并返回矩阵内部矩形区域的不超过 k 的最大 ...

  8. Scoring System

    ‍Build a scoring system , give the score by referee , and entering the score in system , then take o ...

  9. java 运用Cipher加密再解密后会变乱码。解决方案!

    同样的方法类用main调用加解密都正常,就是当用到业务就是加密后再解密变乱码. 后来发现同样的内容加密后的内容竟不相同. 经调试发现 encryptData.getBytes() 转为字节是的使用 C ...

  10. webpack 快速入门 系列 —— 初步认识 webpack

    初步认识 webpack webpack 是一种构建工具 webpack 是构建工具中的一种. 所谓构建,就是将资源转成浏览器可以识别的.比如我们用 less.es6 写代码,浏览器不能识别 less ...