NVIDIA软硬件
前段时间调研学习NVIDIA Aerial SDK,再加上本科做比赛接触到很多NVIDIA的产品,毕设使用的硬件平台也是NVIDIA的嵌入式套件,后续还可能接触他们的产品,因此想详细逛一下官网,对软硬件产品有更深入的理解。NVIDIA中文官网
软硬件产品
先来看一下中文官网,在官网上方的目录栏产品中包括了NVIDIA提供的全部软硬件产品


从上图可以看到硬件主要包括游戏和娱乐、笔记本电脑和工作站、云和数据中心、网络、GPU、嵌入式系统几个分类。由此也可以总结出云、本地数据中心、边缘处理器的硬件架构。比如EGX等组合平台就是这种架构
软件主要包括应用框架、应用和工具、游戏和创作、基础架构、云服务几个分类。由此可以总结出硬件驱动、CUDA、虚拟容器、应用SDK、大规模生态的软件架构,另外还有软件管理、IO加速等应用
GPU - GPC - SM - CUDA CORE TENSOR CORE RT CORE
NVIDIA应用生态系统

如图以英伟达应用生态系统为例,因为它是比较常用的大规模生态系统,致力于解决具体应用需求。从底层至上层,从硬件至软件分为硬件平台、硬件驱动、CUDA-X、EGX堆栈(包括虚拟容器、安全、网络等)、应用SDK(如METROPOLIS、AERIAL等)、大规模应用生态系统
Aerial SDK

Aerial SDK是一个应用框架,用于构建高性能、软件定义、云原生的5G应用,以满足消费者日益增长的需求。在GPU上并行处理基带信号和数据流,优化结果
Aerial SDK主要包括cuBB和cuVNF
CUDA Baseband(cuBB):提供GPU加速的5G信号处理流程,实现高吞吐量和高效率。包括cuPHY(提供波束赋形、LDPC编解码以及其他用于物理层的功能)和cuPHY-CP(提供控制cuPHY与上层接口的能力等)
CUDA Virtual Network Functions(cuVNF):提供优化的输入/输出和数据处理功能,在GPU内存和NIC(Network Interface Card)之间直接交换数据。包括DPDK(Data Plane Development Kit,Intel推出的提升报文处理效率的软件库)和用于信号处理的CUDA-X库