0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

详细介绍GPGPU计算的原理和应用

lC49_半导体 来源:yxw 作者:Daniel Mor 2019-08-27 09:43 次阅读

当下,嵌入式系统设计主要面临两个困难,可将其归纳为:算力的损失和功耗的增加。主要的“罪魁祸首”包括:数据源的涌入(influx),技术的持续升级,系统规模的缩小以及系统内部密度的增加。

高性能嵌入式计算机(HPEC)系统已经开始在通用图形处理器单元(GPGPU)上利用专用的并行计算速度和性能,使系统设计人员能够将出色的功率和性能带入坚固耐用的小型化设计(SFFs)。

GPU加速计算将图形处理单元(GPU)与中央处理单元(CPU)结合在一起,以加速应用程序,并将一些计算密集型任务从CPU移到到GPU。

这里,需要特别关注的是,随着处理要求的不断提高,主计算引擎——CPU——最终会不堪重负。而GPU已经发展成为一种极其灵活且强大的处理器,并且由于具有改进的可编程性、精度和并行处理能力,可以比CPU更好、更快地处理某些计算任务。

如果能深入了解GPGPU计算,包括其强大的功能和局限性,可以帮助设计人员为应用选择能提供最佳性能的产品

下面,我们就来分析一下关于GPGPU的11种说法和认知,看哪些是对的,哪些是错的。

1.GPGPU只适用于消费类电子产品,如游戏中的图形渲染

这种说法不对。正如过去几年所展示的那样,GPGPU正在重新定义数据处理和深度学习网络方面的能力,以及塑造着其在人工智能领域的形象和期望。且有越来越多基于GPGPU技术的军事和国防项目在应用中部署,包括用于雷达的先进处理能力,图像识别,分类,运动检测,编码等系统。

2.因为是“通用的”,所以GPU不是为处理复杂的高密度计算任务而设计的

这种说法也是错的。典型的强大RISC或CISC CPU具有数十个复杂核心。GPU具有数千个“专用”内核,经过优化可处理和操作大型数据矩阵,如显示器或输入设备和光学相机(见图1)。这些GPU允许应用程序在多个内核之间共享算法,并且更容易构建和执行并行处理。能够在GPU上创建许多并发“内核” ——每个“内核”负责特定计算的子集——使系统能够执行复杂的高密度计算。

图1:虽然多核CPU能提供增强的处理能力,但基于CUDA的GPU可提供数千个并行运行,并同时处理大量数据的内核。

GPGPU管道在GPU上使用并行处理来分析数据,就好像它是图像或其他图形数据一样。虽然GPU在较低频率下运行,但它们通常具有许多核心数量。因此,与传统CPU相比,GPU每秒可以处理更多的图片和图形数据。使用GPU并行管道扫描和分析图形数据可以实现大幅加速。

3.GPGPU不够坚固,无法承受如井下监测、移动或军事应用等恶劣环境

错。加固的责任实际上是在电路板或系统制造商身上。在恶劣的电子环境中使用的许多零部件在制造时并不坚固,这方面,GPGPU与其它器件相同。这时,就需要设计可靠系统的知识发挥作用了,包括哪种技术可以最好地减轻环境危害等因素的影响,并确保系统满足特定的应用要求。

例如, Aitech拥有基于GPGPU的电路板和SFF系统,这些电路板和SFF系统符合许多航空电子设备,海军,地面和移动应用要求,这得益于其数十年积累起来的、可用于系统开发的专业知识。

4.当处理能力超出系统要求时,替代方案需要增加功耗(即购买功能更强大的硬件

这种说法是对的。如果用户试图避免使用GPGPU,通常会导致CPU性能不足。为了尝试解决这个难题,通常会增加额外的CPU板,或者现有的板会超频,从而导致功耗增加。在大多数情况下,结果是降低了CPU频率性能以及需要降低时钟以补偿芯片温度上升。

5.不添加另一个处理引擎会增加系统中的复杂性和集成问题吗?

在短期内,也许是这样,因为您需要考虑使用新的尖端技术的学习曲线。但从长远来看,不是这样。CUDA已成为图像处理和算法的事实上的计算语言。构建CUDA算法后,您可以在支持NVIDIA GPGPU板的任何不同平台上“重复使用”它。将它从一个平台移植到另一个平台很容易,因此,该方法只需要很少的特定硬件,因此更“通用”。

6.由于基于GPGPU的系统处理极大量的数据,因此会增加功耗

不是的。当今的GPGPU非常节能。一些GPGPU板的功耗与CPU板上的功耗相同。GPGPU板可以使用数千个CUDA内核处理更多的并行数据。因此,功率 - 性能比是以非常积极的方式受到影响的因素。

7.在性能和功耗之间仍需要权衡

是的,这些权衡总是存在的。更高的性能和更快的吞吐量需要更多的功耗,这是事实。但这些是您在使用CPU或其它处理器时,同样需要面对的问题,无一例外。

例如,采用“NVIDIA Optimus技术”时,由于它是一种计算机GPU切换技术,其中,独立GPU处理所有渲染任务,最终图像输出到显示器仍由RISC处理器及其集成图形处理器(IGP)处理。实际上,RISC CPU的IGP仅用作简单的显示控制器,从而实现无缝、实时、无闪烁的体验,无需在GPGPU或共享CPU上承担图像渲染和生成的全部负担所有RISC CPU上的图像识别资源。这种负载共享可使系统更加强大。

当运行不太关键或要求较低的应用程序时,可以关闭独立GPU。英特尔IGP可处理渲染和显示调用,以节省电量并提供最高的性能功耗比。

8.平衡CPU上的负载可以通过简单的电路板升级来完成,且足以管理系统所需的数据处理

错。对于这种情况,业界肯定会采用并行处理,即采用GPU处理,这是有充分理由的。并行处理图像是GPU最擅长的。随着数据输入和摄像机分辨率的不断增长,对并行处理架构的需求将成为常态,而不是奢侈品。对于需要同时捕获、比较、分析和决策数百个图像的任务和安全行业尤其如此(见图2)。

图2:随着数据输入的增加,CPU在处理、负载平衡和时钟要求方面的能力将无法满足实际要求。

9.摩尔定律也适用于GPGPU

是的。有一个解决方案。NVIDIA目前正在对多芯片模块GPU(MCM-GPU)架构进行原型设计,尽管当今的集成电路制程工艺升级越来越困难,晶体管微缩速度明显减缓,但该架构可实现持续的GPU性能扩展。

在GTC 2019上,NVIDIA关于MCM-GPU芯片的讨论部分,特别介绍了许多可应用于更高级别计算系统的技术,包括mesh网络,低延迟信令和可扩展的深度学习架构,以及有机基板上的die-to-die高效传输技术。

10.学习一种全新的编程语言(如CUDA)需要花费太多的时间和金钱投入

实际上,并不是这样的。目前,CUDA是事实上的并行计算标准语言,且市场上已经部署了许多基于CUDA的解决方案,因此,许多算法已经移植到了CUDA。NVIDIA有一个大型的在线论坛,有许多应用案例,网络培训课程,用户社区等。此外,软件公司愿意帮助设计人员完成CUDA的入门。在许多大学,CUDA现在是编程语言课程的一部分。

学习任何新的计算技术似乎都会令人生畏。但是,凭借可用资源和GPGPU技术的广阔前景,这是一种非常值得投资的编程语言。

11.嵌入式市场没有“工业级”GPGPU,特别是SFF,SWaP优化系统

错。NVIDIA拥有一套完整的、面向嵌入式市场的“Jetson”产品线(见图3)。目前包括以下系统模块(SoM),每个模块都采用SFF设计,对其尺寸、重量和功耗都进行了优化。

TX1

TX2

TX2i:特殊的“工业”版本,适用于非常“恶劣”的环境

Xavier

图3:专为工业级和军用级应用而设计的GPGPU,正在重新定义SWaP优化和SFF系统的预期性能。

实际上,NVIDIA推出了具有更长生命周期的TX2i模块,这意味着对于长期计划(如航空航天、国防和太空)以及几种工业应用来说,组件过时风险较小。业界已经部署了许多相应的军事和工业项目以及客户计划,每天都有新的应用推出。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 半导体
    +关注

    关注

    334

    文章

    26996

    浏览量

    216205
  • 嵌入式
    +关注

    关注

    5068

    文章

    19014

    浏览量

    303166
  • 计算机
    +关注

    关注

    19

    文章

    7414

    浏览量

    87704
  • 人工智能
    +关注

    关注

    1791

    文章

    46840

    浏览量

    237520
收藏 人收藏

    评论

    相关推荐

    AI云端计算资源有哪些类型

    AI云端计算资源涵盖了从基础设施到软件服务的多个层面,为AI模型的训练、推理和部署提供了强大的支持。下面,AI部落小编为您详细介绍AI云端计算资源的主要类型。
    的头像 发表于 11-15 09:39 112次阅读

    【「算力芯片 | 高性能 CPU/GPU/NPU 微架构分析」阅读体验】--了解算力芯片GPU

    方式可以提高处理器的吞吐量。并行计算模式(而非图形模式下)GPGPU的流水线是针对线程束进行管理的,也就是NVIDIA所说的 CUDA环境下的 warp 或者AMD 所说的 OpenCL 环境下
    发表于 11-03 12:55

    【「算力芯片 | 高性能 CPU/GPU/NPU 微架构分析」阅读体验】--全书概览

    计算发展 7.2 GPGPU指令流水线 第8章 GPGPU 存储体系与线程管理 8.1 GPGPU多级别存储体系 8.2 GPGPU线程管
    发表于 10-15 22:08

    GPGPU体系结构优化方向(1)

    继续上文GPGPU体系结构优化方向 [上],介绍提高并行度和优化流水线的方向。
    的头像 发表于 10-09 10:03 211次阅读
    <b class='flag-5'>GPGPU</b>体系结构优化方向(1)

    龙芯中科首款GPGPU芯片9A1000计划明年流片

    龙芯中科在GPU领域迈出了坚实步伐,其首款集成自研GPGPU核心的2K3000芯片已在上半年成功交付流片,标志着龙芯在终端应用市场的深入探索。更令人瞩目的是,其首款GPGPU芯片9A1000计划于今
    的头像 发表于 09-24 14:48 481次阅读

    【《计算》阅读体验】+一篇内容丰富的介绍计算的科普书

    阅读实体书,捧在手里翻页的感觉完全不一样。 从介绍来看作者也是大牛 一开始看到书名的时候以为是讲计算理论的专业书,拿到书本看到介绍和目录之后才发现其实是一本科普书。但是看到书的目录之后
    发表于 06-27 23:18

    京准电钟:GPS时钟服务器(NTP授时服务器)资料详细介绍

    京准电钟:GPS时钟服务器(NTP授时服务器)资料详细介绍书 京准电钟:GPS时钟服务器(NTP授时服务器)资料详细介绍
    发表于 06-18 14:52

    反激式参数详细计算(含公式)

    反激式参数详细计算(含公式)
    发表于 06-17 13:10 0次下载

    开源芯片系列讲座第20期:基于RISC-V向量扩展的开源GPGPU软硬件设计

    在当前国际科技竞争日益激烈的情势下,我国急需要建立一个采用开源指令集GPGPU架构,构建起统一的软硬件生态。相关参与方共同努力,共同建设起我国自主可控的GPGPU产业,服务于我国电子信息核心关键产业。
    的头像 发表于 05-20 16:27 297次阅读
    开源芯片系列讲座第20期:基于RISC-V向量扩展的开源<b class='flag-5'>GPGPU</b>软硬件设计

    开关电源(SMPS)中各个元器件损耗的计算和预测技术介绍

    本文详细介绍了开关电源(SMPS)中各个元器件损耗的计算和预测技术,并讨论了提高开关调节器效率的相关技术和特点,以选择最合适的芯片来达到高效指标。
    的头像 发表于 01-22 18:26 2w次阅读
    开关电源(SMPS)中各个元器件损耗的<b class='flag-5'>计算</b>和预测技术<b class='flag-5'>介绍</b>

    什么是边缘计算,边缘计算有哪些应用?

    ,以降低数据传输延迟、减轻网络压力,同时提供更快速、更灵活的服务。边缘计算在各个领域都有广泛应用,下面将详细介绍边缘计算的定义、原理以及各个应用领域。 边缘
    的头像 发表于 01-09 11:29 1674次阅读

    电机扭矩的计算公式和转速计算公式

    在电机学中,电机转速和扭矩是非常重要的参数,在实际应用中,电机转速和扭矩的计算公式也使用得非常频繁,本文详细介绍扭矩的计算公式和转速计算公式
    发表于 12-25 09:41 4703次阅读

    大算力芯片何时迎来终局战?

    在NVIDIA GPGPU之前,GPU真的就只是GPU,即专用于图形计算的加速卡。这一时期的GPU,符合DSA的定义规范,可以当作是专用于图像领域的G-DSA。直到NVIDIA GPGPU的出现。
    发表于 12-21 15:45 470次阅读
    大算力芯片何时迎来终局战?

    pcb电流与线宽公式详细计算

    PCB(Printed Circuit Board,印刷电路板)是现代电子产品中必不可少的关键部件之一。在制造过程中,对于电子线路板的电流和线宽的选取是非常重要的因素。本文将详细介绍PCB电流与线宽
    的头像 发表于 12-19 10:31 4315次阅读

    从图形到通用计算GPGPU技术的进化之路

    在当今的计算世界中,GPGPU(General-Purpose computing on Graphics Processing Units)已成为一种重要的技术概念。它与传统的图形处理单元(GPU
    的头像 发表于 12-01 12:55 1064次阅读
    从图形到通用<b class='flag-5'>计算</b>:<b class='flag-5'>GPGPU</b>技术的进化之路