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

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

3天内不再提示

NVIDIA Sionna:一个GPU加速的开源库

eeDesign 来源:物联网评论 作者:物联网评论 2022-03-30 12:10 次阅读

即使 5G 无线网络正在全球范围内安装和使用,学术界和工业界的研究人员已经开始为 6G 定义 愿景和关键技术 。虽然没有人知道 6G 将是什么,但一个反复出现的愿景是, 6G 必须能够以前所未有的规模创建数字双胞胎和分布式机器学习( ML )应用程序。 6G 研究需要新的工具。

支撑 6G 愿景的一些关键技术是被称为太赫兹波段的高频通信。在这个波段,更多的光谱是按数量级提供的。技术示例包括:

  • 可重构智能表面( RIS ),用于控制电磁波的反射方式并实现最佳覆盖。
  • 集成传感和通信( ISAC )将 6G 网络转化为传感器,为自动驾驶汽车、道路安全、机器人和物流提供了许多令人兴奋的应用。

机器学习有望在整个 6G 协议栈中发挥决定性作用,这可能会彻底改变我们设计和标准化通信系统的方式。

应对这些革命性技术的研究挑战需要新一代工具来实现突破,这些突破将定义 6G 时代的通信。原因如下:

  • 许多 6G 技术需要模拟特定环境,例如工厂或小区,物理位置、无线信道脉冲响应和视觉输入之间具有空间一致性的对应关系。目前,这只能通过昂贵的测量活动或基于场景渲染和光线跟踪组合的高效模拟来实现。
  • 随着机器学习和神经网络变得越来越重要,研究人员将从带有本地 ML 集成和自动梯度计算的链接级模拟器中受益匪浅。
  • 6G 仿真需要前所未有的建模精度和规模。 ML 增强算法的全部潜力只能通过基于物理的模拟来实现,这些模拟以过去不可能的细节水平来解释现实。

介绍 NVIDIA Sionna

为了满足这些需求, NVIDIA 开发了 Sionna ,这是一个 GPU 加速的开源库,用于链路级模拟。

Sionna 能够快速原型化复杂的通信系统架构。这是世界上第一个能够在物理层使用神经网络的框架,并且不需要为数据生成、培训和性能评估使用单独的工具链。

Sionna 实施了一系列经过仔细测试的最先进算法,可用于基准测试和端到端性能评估。这可以让你专注于你的研究,使它更具影响力和可复制性,同时你花更少的时间实现你专业领域之外的组件。

Sionna 是用 Python 写成的,基于 TensorFlow 和 Keras 。所有组件都以 Keras 层的形式实现,这使您可以通过与构建神经网络相同的方式连接所需的层来构建复杂的系统架构。

除了少数例外,所有组件都是可微的,因此梯度可以在整个系统中反向传播。这是系统优化和机器学习的关键因素,尤其是神经网络的集成。

NVIDIA GPU acceleration 提供了几个数量级的更快模拟,并可扩展到大型多 GPU 设置,从而实现此类系统的交互式探索。如果没有 GPU 可用,那么 Sionna 甚至可以在 CPU 上运行,尽管速度较慢。

Sionna 提供了丰富的 documentation 和一系列教程,使其易于入门。

Sinna 的第一个版本具有以下主要功能:

  • 5G LDPC 、 5G 极性码和卷积码、速率匹配、 CRC 、交织器、扰码器
  • 各种解码器: BP 变体、 SC 、 SCL 、 SCL-CRC 、维特比
  • QAM 和定制调制方案
  • 3GPP 38.901 信道模型( TDL 、 CDL 、 RMa 、 UMa 、 Umi )、瑞利、 AWGN
  • 正交频分复用
  • MIMO 信道估计、均衡和预编码

Sionna 是根据 Apache 2.0 许可证发布的,我们欢迎外部各方的贡献。

你好,Sionna!

下面的代码示例显示了一个“你好,世界!”模拟使用 16QAM 调制在 AWGN 信道上传输一批 LDPC 码字的示例。本例显示了如何实例化 Sionna 层,并将其应用于先前定义的张量。编码风格遵循 Keras 的 functional API 。您可以在 Google Collaboratory 上的 Jupyter notebook 中直接打开此示例。

batch_size = 1024 n = 1000 # codeword length k = 500 # information bits per codeword m = 4 # bits per symbol snr = 10 # signal-to-noise ratio c = Constellation("qam",m,trainable=True) b = BinarySource()([batch_size, k]) u = LDPC5GEncoder (k,n)(b) x = Mapper (constellation=c)(u) y = AWGN()([x,1/snr]) 11r = Demapper("app", constellation=c)([y,1/snr]) b_hat = LDPC5GDecoder(LDPC5GEncoder (k, n))(11r)

Sionna 的一个关键优势是,组件可以进行训练或由神经网络代替。 NVIDIA 使Constellation可训练,并用NeuralDemapper取代Demapper,后者只是通过 Keras 定义的神经网络。

c = Constellation("qam",m,trainable=True) b = BinarySource()([batch_size, k]) u = LDPC5GEncoder (k,n)(b) x = Mapper (constellation=c)(u) y = AWGN()([x,1/snr]) 11r = NeuralDemapper()([y,1/snr]) b_hat = LDPC5GDecoder(LDPC5GEncoder (k, n))(11r)

在这种情况下,定义星座点的张量现在变成了一个可训练的 TensorFlow 变量,可以通过 TensorFlow 自动微分功能与NeuralDemapper的权重一起跟踪。由于这些原因, SIONA 可以被视为一个可微链路级模拟器。

展望未来

很快, Sionna 将允许集成光线跟踪来取代随机通道模型,从而实现许多新的研究领域。超快射线追踪是通信系统数字孪生的关键技术。例如,这使得建筑物的架构和通信基础设施的共同设计能够实现前所未有的吞吐量和可靠性。

Pseudo-code blocks surrounding a simulated image.Pseudo-code blocks surrounding a simulated image.

图 3 。从 Jupyter 笔记本电脑中访问硬件加速光线跟踪功能

Sionna 利用计算( NVIDIA CUDA 核)、 AI ( NVIDIA 张量核)和 NVIDIA GPU 的光线跟踪核对 6G 系统进行闪电般的模拟。

我们希望你们能分享我们对 Sionna 的兴奋,我们期待着听到你们的成功故事!

有关更多信息,请参阅以下参考资料

  • Sionna 产品页面
  • Sionna documentation
  • nvlabs/sionna GitHub 回购
审核编辑:符乾江
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 通信
    +关注

    关注

    18

    文章

    5706

    浏览量

    134380
  • NVIDIA
    +关注

    关注

    14

    文章

    4592

    浏览量

    101706
  • gpu
    gpu
    +关注

    关注

    27

    文章

    4417

    浏览量

    126679
收藏 人收藏

    评论

    相关推荐

    OpenHarmony开源GPUMesa3D适配说明

    (利用了图形加速硬件)依赖于显示设备厂家的硬件及实现。 OpenGL API实现的方式又分为闭源及开源两种方式。闭源实现般由设备厂家完成,这种方式充分保证了它的高效性,但移植起来比较麻烦。今天我们要重点
    发表于 12-25 11:38

    NVIDIA Tesla K40C K40M 高精密并行计算GPU

    " 14000 年质保 工业包装 现货 Nvidia TeslaK10 "GPU 的数量和类型:2 Kepler GK104sCUDA核心
    发表于 09-02 21:17

    NVIDIA火热招聘GPU高性能计算架构师

    GPU架构设计者提供反馈,以改善和推进未来GPU的架构设计基本要求(其即可): * 严谨的逻辑思维和分析能力* 有CUDA代码调优经验(或者SIMD等架构的调优经验)* 熟悉矩阵计算的优化和
    发表于 09-01 17:22

    NVIDIA-SMI:监控GPU的绝佳起点

    nvidia-smi可执行文件位于虚拟机管理程序上。如果在同部署中您选择在GPU上使用作为传递,那么GPU正在寻找访客上的NVIDIA驱动
    发表于 09-04 15:18

    GPU加速XenApp/Windows 2016/Office/IE性能会提高吗

    配置文件来了解3D / GPU / HDX性能。 XenApp服务器运行的是带有4vCPU和48GB RAM的Windows Server 2016映像。在性能测试期间,我直在使用GPU
    发表于 09-12 16:24

    购买哪款Nvidia GPU

    您好 - 我正在开展涉及通过3到30秒的视频和计算机视觉算法来分析视频的项目。目前,我正在使用Microsoft Azure:Ubuntu VM Linux服务器 -64位版本16.04
    发表于 09-26 15:30

    NVIDIA网格GPU-PSOD的支持结构

    they blamed it on the nvidia gpu but they dont know if its a driver or hardware issue.Can a ticket be open
    发表于 10-10 16:15

    GPU加速matlab程序

    最近遇到了加速matlab程序的问题,不知道如何利用GPU,以及使用GPU的先决条件,是不是GPU
    发表于 03-30 11:21

    Nvidia GPU风扇和电源显示ERR怎么解决

    问题最近在Ubuntu上使用Nvidia GPU训练模型的时候,如果机器锁屏段时间再打开的时候鼠标非常卡顿,或者说显示界面非常卡顿,使用nvidia-smi查看发现,训练模型的
    发表于 12-30 06:44

    在Ubuntu上使用Nvidia GPU训练模型

    问题最近在Ubuntu上使用Nvidia GPU训练模型的时候,没有问题,过会再训练出现非常卡顿,使用nvidia-smi查看发现,显示GPU
    发表于 01-03 08:24

    在RK3399上运行开源GPU驱动

    的性能比较弱,没有带 3D 图形加速(即 GPU)功能,比如i.MX6ULL开发板上的 SOC 带了 GPU,但是没有用起来。第一个原因基本是无解的,如果你选的 SOC上面没有带
    发表于 10-20 17:44

    NVIDIA推出适用于Python的VPF,简化开发GPU加速视频编码/解码

    NVIDIA推出了适用于Python的开源视频处理框架“VideoProcessingFramework”(VPF)。据悉,VPF 是一组开源的C ++库和Python绑定,可与其封闭源代码Codec SDK进行交互。该框架的功
    的头像 发表于 12-18 14:25 6607次阅读

    NVIDIA GPU加速计算之路

    NVIDIA从提出GPU以及CUDA核心开始,NVIDIA便开始逐步迈出游戏圈,不断向全新的计算领域发起攻势。时至今日,NVIDIA GPU
    的头像 发表于 12-23 09:12 6963次阅读

    Nvidia宣布推出了一套新的开源RAPIDS库

    在德国慕尼黑举行的GPU技术会议上,高性能GPU和人工智能领域的领导者Nvidia宣布推出了一套新的开源RAPIDS库,用于GPU
    的头像 发表于 03-25 15:38 2126次阅读

    177倍加速NVIDIA最新开源 | GPU加速各种SDF建图!

    但最近,NVIDIA和ETHZ就联合提出了nvblox,是一个使用GPU加速SDF建图的库。计算速度非常快,相较CPU计算TSDF甚至快了177倍。更重要的是,因为所有数据都已经存储在GPU
    的头像 发表于 11-09 16:46 553次阅读
    177倍<b class='flag-5'>加速</b>!<b class='flag-5'>NVIDIA</b>最新<b class='flag-5'>开源</b> | <b class='flag-5'>GPU</b><b class='flag-5'>加速</b>各种SDF建图!