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

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

3天内不再提示

高效框架互操作性第2部分:数据加载传输瓶颈和RDMA解决方案

星星科技指导员 来源:NVIDIA 作者:NVIDIA 2022-04-07 14:10 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

高效的管道设计对数据科学家至关重要。在编写复杂的端到端工作流时,您可以从各种构建块中进行选择,每种构建块都专门用于特定任务。不幸的是,在数据格式之间重复转换容易出错,而且会降低性能。让我们改变这一点!

在本系列文章中,我们将讨论高效框架互操作性的不同方面:

在第一个职位中,讨论了不同内存布局以及异步内存分配的内存池的优缺点,以实现零拷贝功能。

在这篇文章中,我们将重点介绍数据加载/传输过程中出现的瓶颈,以及如何使用远程直接内存访问( RDMA )技术来缓解这些瓶颈。

在第三篇文章中,我们深入讨论了端到端管道的实现,展示了所讨论的跨数据科学框架的最佳数据传输技术。

要了解有关框架互操作性的更多信息,请查看 NVIDIA GTC 2021 年会议上的演示。

数据加载和数据传输瓶颈

数据加载瓶颈

到目前为止,我们假设数据已经加载到内存中,并且使用了单个 GPU 。本节重点介绍了 MIG 在将数据集从存储器加载到设备内存或使用单节点或多节点设置在两个 GPU 之间传输数据时出现的几个瓶颈。然后我们讨论如何克服它们。

在传统工作流(图 1 )中,当数据集从存储器加载到 GPU 内存时,数据将使用 CPU 和 PCIe 总线从磁盘复制到 GPU 内存。加载数据至少需要两份数据副本。第一种情况发生在将数据从存储器传输到主机内存( CPU RAM )时。将数据从主机内存传输到设备内存( GPU VRAM )时,会出现数据的第二个副本。

图 1 :在传统设置下,存储器 CPU 内存和 GPU 内存之间的数据移动。

或者,使用利用 NVIDIA Magnum IO GPUDirect Storage 技术的基于 GPU 的工作流(见图 2 ),数据可以使用 PCIe 总线直接从存储器流向 GPU 存储器,而无需使用 CPU 或主机存储器。由于数据只复制一次,因此总体执行时间缩短。不涉及此任务的 CPU 和主机内存也使这些资源可用于管道中其他基于 CPU 的作业。

图 2 :启用 GPU 直接存储技术时,存储器和 GPU 内存之间的数据移动。

节点内数据传输瓶颈

某些工作负载要求位于同一节点(服务器)中的两个或多个 GPU 之间进行数据交换。在 NVIDIA GPUDirect Peer to Peer 技术不可用的情况下,来自源 GPU 的数据将首先通过 CPU 和 PCIe 总线复制到主机固定共享内存。然后,数据将通过 CPU 和 PCIe 总线从主机固定共享内存复制到目标 GPU 。请注意,数据在到达目的地之前复制了两次,更不用说 CPU 和主机内存都参与了这个过程。图 3 描述了前面描述的数据移动。

图 3 :当 NVIDIA GPU 直接 P2P 不可用时,同一节点中两个 GPU 之间的数据移动。

当 GPU 直接对等技术可用时,将数据从源 GPU 复制到同一节点中的另一 GPU 不再需要将数据临时转移到主机内存中。如果两个 GPU 都连接到同一 PCIe 总线, GPU 直接 P2P 允许在不涉及 CPU 的情况下访问其相应的内存。前者将执行相同任务所需的复制操作数量减半。图 4 描述了刚才描述的行为。

图 4 :启用 NVIDIA GPU 直接 P2P 时,同一节点中两个 GPU 之间的数据移动。

节点间数据传输瓶颈

在 NVIDIA GPUDirect Remote Direct Memory Access 技术不可用的多节点环境中,在不同节点的两个 GPU 之间传输数据需要五个复制操作:

第一次复制发生在将数据从源 GPU 传输到源节点中主机固定内存的缓冲区时。

然后,该数据被复制到源节点的 NIC 驱动程序缓冲区。

在第三步中,数据通过网络传输到目标节点的 NIC 驱动程序缓冲区。

将数据从目标节点 NIC 的驱动程序缓冲区复制到目标节点中主机固定内存的缓冲区时,会发生第四次复制。

最后一步需要使用 PCIe 总线将数据复制到目标 GPU 。

这样总共进行了五次复制操作。真是一次旅行,不是吗?图 5 描述了前面描述的过程。

图 5 :当 NVIDIA GPU 直接 RDMA 不可用时,不同节点中两个 GPU 之间的数据移动。

启用 GPU 直接 RDMA 后,数据拷贝数将减少到一个。共享固定内存中不再有中间数据拷贝。我们可以在一次运行中直接将数据从源 GPU 复制到目标 GPU 。与传统设置相比,这为我们节省了四个不必要的复制操作。图 6 描述了这个场景。

图 6 :当 NVIDIA GPU 直接 RDMA 可用时,不同节点中两个 GPU 之间的数据移动。

结论

在我们的第二篇文章中,您已经了解了如何利用 NVIDIA GPU 直接功能来进一步加快管道的数据加载和数据分发阶段。

在我们三部曲的第三部分中,我们将深入研究医学数据科学管道的实现细节,该管道用于连续测量的心电(ECG)流中的心跳异常检测。

关于作者

Christian Hundt 在德国美因茨的 Johannes Gutenberg 大学( JGU )获得了理论物理的文凭学位。在他的博士论文中,他研究了时间序列数据挖掘算法在大规模并行架构上的并行化。作为并行和分布式体系结构组的博士后研究员,他专注于各种生物医学应用的高效并行化,如上下文感知的元基因组分类、基因集富集分析和胸部 mri 的深层语义图像分割。他目前的职位是深度学习解决方案架构师,负责协调卢森堡的 NVIDIA 人工智能技术中心( NVAITC )的技术合作。

Miguel Martinez 是 NVIDIA 的高级深度学习数据科学家,他专注于 RAPIDS 和 Merlin 。此前,他曾指导过 Udacity 人工智能纳米学位的学生。他有很强的金融服务背景,主要专注于支付和渠道。作为一个持续而坚定的学习者, Miguel 总是在迎接新的挑战。

审核编辑:郭婷

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

    关注

    14

    文章

    5511

    浏览量

    109155
  • 深度学习
    +关注

    关注

    73

    文章

    5591

    浏览量

    123963
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    RDMA设计5:RoCE V2 IP架构

    控制的核心模块。RoCE v2 高速数据传输IP内部集成了多种功能,包括 RDMA 建链、RDMA 队列管理、DMA 传输和系统监控等。 这
    发表于 11-25 10:34

    RDMA设计4:技术需求分析2

    专注高性能存储与传输,希望对初学者有用。注意这里只是抛砖引玉,切莫认为参考这就可以完成商用IP设计。若有NVME或RDMA 产品及项目需求,请看B站视频后联系。 根据IP适用技术需求分析,总结
    发表于 11-24 09:09

    RDMA设计2:开发必要之性能简介

    专注高性能存储与传输,这里分享RDMA设计,之前已介绍RDMA相关知识,在本博客已给出相关博文已100多篇,希望对初学者有用。注意这里只是抛砖引玉,切莫认为参考这就可以完成商用IP设计。若有NVME
    发表于 11-20 10:57

    RDMA设计1:开发必要1之设计考虑

    。 一. 选择 RDMA IP 开发必要 为了满足大批量数据的采集、 存储与传输需求, 如机器学习、 雷达、 ⾦融⻛控、 航空航天等, 如何在 FPGA 上实现高带宽、 低延时的
    发表于 11-19 14:30

    是德科技与HEAD acoustics成功完成新一代eCall系统操作性测试

    是德科技(NYSE: KEYS )近日宣布,其基于UXM的新一代eCall(NG eCall)解决方案,已成功与全球汽车声学测试领导者HEAD acoustics GmbH完成操作性测试。
    的头像 发表于 11-18 11:29 450次阅读

    Microchip与AVIVA Links实现ASA-ML操作性验证

    汽车行业正加速从专有串行器/解串器(SerDes)解决方案向汽车串行器/解串器联盟(Automotive SerDes Alliance)及其首个开放标准——ASA Motion Link(ASA-ML)构建的可操作系统生态过
    的头像 发表于 10-23 17:13 867次阅读

    RDMA over RoCE V2设计2:ip 整体框架设计考虑

    )多队列并行管理及控制。支持系统运行过程中进行创建队列、删除队列、队列更改等操作。 6)DMA 传输。通过配置 DMA 寄存器实现直接的数据传输请求,同时使用突发传输来提高
    发表于 07-16 08:51

    RDMA简介2之A技术优势分析

    数据包时,应用程序将要传输数据拷贝到TCP/IP协议栈的BUFFER中,TCP/IP协议栈组包后,再经由驱动程序下发到网卡内的BUFFER中。右侧部分则为
    发表于 06-04 11:35

    RDMA简介1之RDMA开发必要

    协议(iWARP)等RDMA实现方法,RoCE v2协议具有可通过以太网路由、低成本、无TCP/IP依赖等优势。因此,RoCE v2协议是数据采集系统拓展
    发表于 06-03 14:38

    瑞为技术牵头制定的国家标准《信息技术 可扩展的生物特征识别数据交换格式 1部分框架》正式发布

    近日,由瑞为技术牵头、中国电标院等参与制定的国家标准《信息技术 可扩展的生物特征识别数据交换格式 1部分框架》正式发布。 同时,瑞为参编的其他6项可扩展系列标准(涵盖指纹、人脸、虹
    的头像 发表于 04-22 18:05 809次阅读

    Matter 1.4如何提升智能家居设备操作性

    SiliconLabs(芯科科技)Matter首席产品经理Rob Alexander先生近期制作本篇趋势应用文章,重点介绍了Matter 1.4标准版本引入的全新功能,以及这些新特性如何用来提升智能家居设备的操作性,并进一步拓展设备支持类型到能源管理的应用领域。
    的头像 发表于 03-11 10:50 1214次阅读

    新思科技与英特尔携手完成UCIe操作性测试

    近日,新思科技与英特尔携手合作,率先完成了UCIe(Universal Chiplet Interconnect Express)操作性测试芯片演示,并成功推出了包含控制器、PHY(物理层)和验证
    的头像 发表于 02-18 14:18 797次阅读

    ISO 16750-2-2010 道路车辆电气和电子设备的环境条件和试验2部分:电气负载

    电子发烧友网站提供《ISO 16750-2-2010 道路车辆电气和电子设备的环境条件和试验2部分:电气负载.pdf》资料免费下载
    发表于 02-11 15:39 4次下载

    乐鑫 ESP32-C6 通过 Thread 1.4 操作性认证

    乐鑫信息科技(688018.SH)很高兴地宣布,ESP32-C6已经成功通过Thread1.4操作性认证。这一成就标志着乐鑫在提供先进物联网解决方案之路上又迈进了重要一步。ESP32-C6在
    的头像 发表于 02-06 18:02 931次阅读
    乐鑫 ESP32-C6 通过 Thread 1.4 <b class='flag-5'>互</b><b class='flag-5'>操作性</b>认证

    PCIe 6.0 操作性PHY验证测试方案

    最新的Chiplet标准,也基于PCIe,支持可靠的数据传输和CXL缓存一致。因此,PCIe 凭借其高速、低延迟和低功耗,成为
    的头像 发表于 01-02 08:43 1396次阅读
    PCIe 6.0 <b class='flag-5'>互</b><b class='flag-5'>操作性</b>PHY验证测试<b class='flag-5'>方案</b>