本文由大国重器(ID:ElectronicComponent)授权转载,作者: 木雨
本文对GPU/GPGPU在国防应用中涉及到的11项具体问题进行阐述。
顾名思义,图像处理单元(GPU)最初是为处理和渲染图像和视频而设计的。无论是以单个设备形式或者嵌入在单个芯片中央处理器(CPU)内核旁。这些GPU都驻留在每个笔记本电脑、桌面和游戏机上,也发挥在国防应用中的主要功能,以显示和压缩捕获的视频。
大约15年前,工程师发现,GPU可基于在GPU中引入浮点支持的可编程着色器来制造出伟大的数学加速引擎。他们意识到,这可用于那些移动如图像的运动数据应用情况,且所需的处理非常适合于向量和矩阵数学运算。
随后,通用图像处理单元(GPGPU)一词诞生了,CUDA和OpenCL等语言被开发出来,用于抽象出GPGPU底层架构的复杂性。因此,开发者可专注于线性代数算法和数字信号处理功能。
对于需要数百个GFLOPS或甚至TFLOPS处理能力的大型算法,CPU编程人员通常必须在许多硅器件集群中聚合许多多核处理器。在嵌入式系统中,这通常意味着必须开发复杂的软件基础设施,以协调处理器之间数据的直接存储器访问(DMA)传输,包括异步数据切换信令和传输完成方法。
在大型多级DSP算法中,这可能需要各级之间的分散收集技术,相当复杂。 然而,一些较大的GPGPU可以拥有2到3 TFLOPS的基准,其中,整个算法能够驻留在单片硅片中。处理级之间的转移非常简单,因为数据总是在单个硅片上驻留和连贯。甚至GPGPU内部的传输也通过抽象的功能(如NVIDIA的GPUDirect)进行简化。最后,GPGPU编程语言(如CUDA和OpenCL)在可用性和普及程度方面不断提高。
尽管GPGPU的性能无与伦比,通常以每瓦特FLOPS计算,但由于后勤原因,过去许多国防项目已经弃用GPGPU。最主要的担忧是供应的长期性。考虑到商用GPU通常只有18个月到两年的寿命周期,这种情况可以理解。然而,NVIDIA和AMD都增强了其嵌入式机构职能,提供的可用性设备数据显示,其产品正在接近国防工业7年以上的理想寿命周期。
4. GPGPU应用在用尽计算的TFLOPS之前,通常会耗尽内存容量或I/O带宽?
诸如Tesla M6 MXM模块上的NVIDIA Maxwell GM204之类的GPGPU可以实现两到三个TFLOPS。一些算法,例如用五十万点快速傅里叶变换(FFT)的快速卷积,能够利用这种计算能力。然而,问题通常在于数据无法快速到达所有GPGPU内核。也许GPGPU中没有足够的外部GDDR5内存缓冲摄取的传感器数据,或者PCI Express进入和/或退出GPGPU的带宽也不足。例外总是存在,但是一般来说,传感器处理应用程序通常会发现内存绑定或I/O绑定,而不是计算限制。
5. 在国防应用的运行环境中,大型GPGPU冷却是一个难以克服的问题?
幸运的是,与CPU和FPGA一样,GPGPU可以缩放热设计功率(TDP)数字来匹配不同的尺寸。据说,某些国防应用需要采用VITA 46 VPX外形最大可能的GPGPU尺寸。
对传统板级冷却技术进行了重大改进,例如VITA 48.2传导冷却设计指南。例如,最近的一个COTS产品在传导冷却的6U VPX载体上放置了两个NVIDIA Tesla M6 MXM,每个75瓦特。这可能代表传导冷却的上限。但是除了结合具有更高TDP数量的GPGPU之外,诸如VITA 48.5空气流通和液体冷却技术之类的冷却技术将允许VPX中更高的散热上限。
鉴于GPGPUs最初是为图像而设计,它们被降级至数据流应用中。换句话说,没有办法拥有共享或静态数据,每个GPGPU核只能“进入数据流”:从入口读取数据,实时执行一些功能,并写入出口。
目前,GPGPU正在构建多级缓存和分支功能。然而,清晰的GPGPU性能强度仍然在于处理高度并行的大量数据集,并且在数据元素之间具有最小的依赖关系。因此,分支应保持在内环之外。
7. GPU不能处理递归、不规则循环结构或决策分支?
通过动态并行性,GPU内核启动其他内核,有选择性地完成内核同步,执行设备内存管理,以及创建和使用数据流和事件。启动内核是“父核”,它启动的新网格是“子核”。子内核可以自己启动工作,创建一个“嵌套”执行层次结构。所有子核启动必须在父核完成之前完成。这种先进性实现了分层算法的写入,其中,来自上一代的数据用于计算下一个较低级别的工作分区。
GPU具有标准分支指令,例如“if”,“if-else”和“for”。一个warp是一组32个线程,warp必须一次执行一条指令。因此,当给定warp中的所有线程采用相同的执行路径时,才能实现最佳效率。
最初,CPU执行了一系列内核启动,每个内核需要足够的并行性以有效地抵消调用和内存传递开销。现在,需要从父CUDA内核中调用子内核。父核可以使用从子核生成的输出,并有选择性地与它同步,所有这些都不需要CPU参与。这很容易采用,因为GPU内核启动使用与CPU相同的语法。
CPU受控程序受到单一控制点的限制,该控制点只能在给定时间运行有限数量的线程。通过控制GPU上的内核来消耗CPU。通过将顶层循环传输到CPU,可以运行数千个独立任务,从而释放CPU以进行其他工作。
9. 内存必须由CPU创建,然后传递给GPU以移动数据并接收结果?
统一虚拟内存(UVM)为CPU和GPU内存提供单一地址空间,从而消除了系统内存和复制开销。这个统一的内存空间也可以由多GPGPU共享。通过允许用户从单个指针变量确定物理内存位置,库可以简化其接口。在UVM之前,每种类型的内存副本都需要单独的命令;CPU到GPU,CPU到GPU等等。现在一个函数调用可以处理所有情况,用户被释放以指定源和目标存储空间。使用UVM实现真正的零拷贝内存。
10. GPU需要一个CPU来处理数据,并在GPU之间传递数据?
使用GPUDirect、多个GPU、第三方网络适配器、固态驱动器(SSD)和其他设备可以直接在GPU之间读取和写入。GPUDirect对等体可在同一PCIe或NVLink总线上的两个GPU的存储器之间实现高速DMA传输。GPU内核可将数据缓存在目标GPU中,直接访问(加载/存储)到其他GPU的内存中。
GPUDirect RDMA是InfiniBand CORE和GPU之间的应用程序编程接口(API)。它可以访问Mellanox主机通道适配器(HCA)来读取/写入GPU的内存缓冲区,从而使GPU能够直接从RDMA互连中获取数据,而无需首先将数据复制到CPU内存。
仅使用GPUDirect RDMA,CPU仍然驱动计算和通信。但通过添加GPUDirect Aysnc,可以将CPU从关键路径中删除。CPU准备并排列GPU上的计算和通信任务。然后GPU发信号通知HCA,HCA直接访问GPU的内存。
使用常规MPI,只能使用指向主机内存的指针。当组合MPI和CUDA时,需要发送GPU缓冲区,这需要在CPU内存中分配GPU缓冲区。使用CUDA感知的MPI库,GPU缓冲区可以直接传递到MPI,从而使消息传输可以流水作业,加速技术(如GPUDirect)对用户来说是透明的。
CUDA的多进程服务(MPS)是允许多个CUDA进程共享单个GPU上下文的功能。每个进程接收到该GPU可用连接的一些子集。 MPS允许GPU上不同进程的内核和内存操作重叠,以实现传统MPI应用程序的最大利用。无需修改应用程序——只需启动MPS守护程序。通过将GPU设置为独占模式,MPS可以在多GPU系统中运行。
一网打尽系列文章,请回复以下关键词查看: |
创新发展:习近平 | 创新中国 | 创新创业 | 科技体制改革 | 科技创新政策 | 协同创新 | 成果转化 | 新科技革命 | 基础研究 | 产学研 | 供给侧 |
热点专题:军民融合 | 民参军 | 工业4.0 | 商业航天 | 智库 | 国家重点研发计划 | 基金 | 装备采办 | 博士 | 摩尔定律 | 诺贝尔奖 | 国家实验室 | 国防工业 | 十三五 | 创新教育 | 军工百强 | 试验鉴定 | 影响因子 | 双一流 |
预见未来:预见2016 | 预见2020 | 预见2025 | 预见2030 | 预见2035 | 预见2045 | 预见2050 | |
前沿科技:颠覆性技术 | 生物 | 仿生 | 脑科学 | 精准医学 | 基因 | 基因编辑 | 虚拟现实 | 增强现实 | 纳米 | 人工智能 | 机器人 | 3D打印 | 4D打印 | 太赫兹 | 云计算 | 物联网 | 互联网+ | 大数据 | 石墨烯 | 能源 | 电池 | 量子 | 超材料 | 超级计算机 | 卫星 | 北斗 | 智能制造 | 不依赖GPS导航 | 通信 | MIT技术评论 | 航空发动机 | 可穿戴 | 氮化镓 | 隐身 | 半导体 | 脑机接口 |
先进武器:中国武器 | 无人机 | 轰炸机 | 预警机 | 运输机 | 战斗机 | 六代机 | 网络武器 | 激光武器 | 电磁炮 | 高超声速武器 | 反无人机 | 防空反导 | 潜航器 | |
未来战争:未来战争 | 抵消战略 | 水下战 | 网络空间战 | 分布式杀伤 | 无人机蜂群 | 太空站 |反卫星 |
领先国家:俄罗斯 | 英国 | 日本 | 以色列 | 印度 |
前沿机构:战略能力办公室 | DARPA | Gartner | 硅谷 | 谷歌 | 华为 | 俄先期研究基金会 | 军工百强 |
前沿人物:钱学森 | 马斯克 | 凯文凯利 | 任正非 | 马云 | 奥巴马 | 特朗普 |
专家专栏:黄志澄 | 许得君 | 施一公 | 王喜文 | 贺飞 | 李萍 | 刘锋 | 王煜全 | 易本胜 | 李德毅 | 游光荣 | 刘亚威 | 赵文银 | 廖孟豪 | 谭铁牛 |
全文收录:2016文章全收录 | 2015文章全收录 | 2014文章全收录 |
其他主题系列陆续整理中,敬请期待…… |
“远望智库”聚焦前沿科技领域,着眼科技未来发展,围绕军民融合、科技创新、管理创新、科技安全、知识产权等主题,开展情报挖掘、发展战略研究、规划论证、评估评价、项目筛选,以及成果转化等工作,为管理决策、产业规划、企业发展、机构投资提供情报、咨询、培训等服务,为推动国家创新驱动发展和军民融合深度发展提供智力支撑。