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

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

3天内不再提示

高效框架互操作性第3部分:使用E2E管道实现零拷贝

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

扫码添加小助手

加入工程师交流群

介绍

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

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

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

在第二职位中,我们强调了数据加载/传输过程中出现的瓶颈,以及如何使用远程直接内存访问( RDMA )技术缓解这些瓶颈。

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

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

让我们深入了解以下方面的全功能管道的实现细节:

从普通 CSV 文件解析 20 小时连续测量的电子 CTR 心电图( ECG )。

使用传统信号处理技术将定制 ECG 流无监督分割为单个心跳。

用于异常检测的变分自动编码器( VAE )的后续培训。

结果的最终可视化。

对于前面的每个步骤,都使用了不同的数据科学库,因此高效的数据转换是一项至关重要的任务。最重要的是,在将数据从一个基于 GPU 的框架复制到另一个框架时,应该避免昂贵的 CPU 往返。

零拷贝操作:端到端管道

说够了!让我们看看框架的互操作性。在下面,我们将逐步讨论端到端管道。如果你是一个不耐烦的人,你可以直接在这里下载完整的 Jupyter 笔记本。源代码可以在最近的RAPIDS docker 容器中执行。

Getting started

In order to make it easier to have all those libraries up and running, we have used the RAPIDS 0.19 container on Ubuntu 18.04 as a base container, and then added a few missing libraries viapip install.

We encourage you to run this notebook on the latest RAPIDS container. Alternatively, you can also set up aconda virtual environment. In both cases, please visitRAPIDS release selectorfor installation details.

Finally, please find below the details of the container we used when creating this notebook . For reproducibility purposes, please use the following command:

foo@bar:~$ docker pull rapidsai/rapidsai-dev:21.06-cuda11.0-devel-ubuntu18.04-py3.7
foo@bar:~$ docker run --gpus all --rm -it -p 8888:8888 -p 8787:8787 -p 8786:8786 \
                      -v ~:/rapids/notebooks/host rapidsai/rapidsai-dev:21.06-cuda11.0-devel-ubuntu18.04-py3.7

步骤 1 :数据加载

在第一步中,我们下载 20 小时的 ele CTR 心电图作为 CSV 文件,并将其写入磁盘(见单元格 1 )。之后,我们解析 CSV 文件中的 500 MB 标量值,并使用 RAPIDS “ blazing fast CSV reader ”(参见单元格 2 )将其直接传输到 GPU 。现在,数据驻留在 GPU 上,并将一直保留到最后。接下来,我们使用cuxfilter( ku 交叉滤波器)框架绘制由 2000 万个标量数据点组成的整个时间序列(见单元格 3 )。


	

图 1 :使用 RAPIDS CSV 解析器解析逗号分隔值( CSV )。

步骤 2 :数据分割

在下一步中,我们使用传统的信号处理技术将 20 小时的 ECG 分割成单个心跳。我们通过将 ECG 流与高斯分布的二阶导数(也称为里克尔小波)进行卷积来实现这一点,以便分离原型心跳中初始峰值的相应频带。使用 CuPy (一种 CUDA 加速的密集线性代数和阵列运算库)可以方便地进行小波采样和基于 FFT 的卷积运算。直接结果是,存储 ECG 数据的 RAPIDS cuDF 数据帧必须使用 DLPack 作为零拷贝机制转换为 CuPy 阵列。

图 2 :使用 CuPy 将 ele CTR 心图( ECG )流与固定宽度的 Ricker 小波卷积。

卷积的特征响应(结果)测量流中每个位置的固定频率内容的存在。请注意,我们选择小波的方式使局部最大值对应于心跳的初始峰值。

view rawCell040506.ipynb hosted with ❤ by GitHub

步骤 3 :局部极大值检测

在下一步中,我们使用非最大抑制( NMS )的 1D 变体将这些极值点映射到二进制门。 NMS 确定流中每个位置的对应值是否为预定义窗口(邻域)中的最大值。这个令人尴尬的并行问题的 CUDA 实现非常简单。在我们的示例中,我们使用即时编译器 Numba 实现无缝的 Python 集成。 Numba 和 Cupy 都将 CUDA 阵列接口实现为零拷贝机制,因此可以完全避免从 Cupy 阵列到 Numba 设备阵列的显式转换。

图 3 :使用 Numba JIT 的 1D 非最大抑制和嵌入心跳。

每个心跳的长度是通过计算门位置的相邻差分(有限阶导数)来确定的。我们通过使用谓词门== 1 过滤索引域,然后调用 cupy 。 diff ()来实现这一点。得到的直方图描述了长度分布。

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

    关注

    45

    文章

    4011

    浏览量

    143374
  • NVIDIA
    +关注

    关注

    14

    文章

    5696

    浏览量

    110119
  • gpu
    gpu
    +关注

    关注

    28

    文章

    5272

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Renesas RA2E3微控制器:低功耗设计与高性能表现

    了众多应用场景的理想选择。本文将深入剖析RA2E3的各项特性,为工程师们在设计过程中提供全面的参考。 文件下载: ra2e3.pdf 一、产品概述 RA2E3系列MCU集成了多个基于Arm的32位内核,这些内核在软件和引脚方面具
    的头像 发表于 04-01 10:00 417次阅读

    吉事励引领电动汽车充电操作性与兼容测试新风向

    在电动汽车行业蓬勃发展的进程中,充电桩的操作性与兼容已成为决定行业能否持续稳健前行的核心要素。这不仅关系到用户充电体验的优劣,更影响着整个产业生态的健康发展。
    的头像 发表于 03-30 15:27 623次阅读
    吉事励引领电动汽车充电<b class='flag-5'>互</b><b class='flag-5'>操作性</b>与兼容<b class='flag-5'>性</b>测试新风向

    是德科技携手爱立信赋能Pre-6G操作性验证

    是德科技(NYSE: KEYS )近日宣布,与爱立信携手合作,使用是德科技的WaveJudge无线分析仪解决方案,对爱立信Pre-6G基站(gNB)与Pre-6G原型设备间的操作性进行故障排查
    的头像 发表于 03-03 16:10 567次阅读

    通过恩智浦RW612三频无线MCU提升多协议操作性

    无线连接是现代智能家居和工业系统的基石,推动着无数更智能、更自主设备的普及。恩智浦非常重视无线操作性,确保生态合作体系中的每台设备能够无缝协同工作的关键能力。
    的头像 发表于 03-03 11:47 1357次阅读

    IO序列化操作:提升系统操作性的关键技术

    在异构系统并存的今天,IO序列化操作成为实现系统间操作性的核心技术。通过标准化的数据格式(如JSON、Protobuf、Hessian等),不同语言、平台的系统得以无缝交换信息。合理
    的头像 发表于 02-25 16:02 196次阅读
    IO序列化<b class='flag-5'>操作</b>:提升系统<b class='flag-5'>互</b><b class='flag-5'>操作性</b>的关键技术

    深度剖析RA2E3微控制器:特性、电气参数与应用考量

    深度剖析RA2E3微控制器:特性、电气参数与应用考量 在当今电子设备小型化、低功耗化的趋势下,微控制器的性能和特性愈发关键。RA2E3作为一款具有代表的微控制器,凭借其低功耗、高性能等优势,在众多
    的头像 发表于 12-29 11:00 660次阅读

    集装箱储能系统标准解析系列(一)|IEC 62933-2-1:电能存储(EES)系统 2-1部分-储能单元参数和试验方法

    IEC 62933-2-1 电能存储(EES)系统 2-1部分:储能单元参数和试验方法
    的头像 发表于 11-25 15:40 3801次阅读
    集装箱储能系统标准解析系列(一)|IEC 62933-<b class='flag-5'>2</b>-1:电能存储(EES)系统 <b class='flag-5'>第</b><b class='flag-5'>2</b>-1<b class='flag-5'>部分</b>-储能单元参数和试验方法

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

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

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

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

    蜂鸟E203取指部分(IFU)架构解读

    一、整体框架 蜂鸟E203的IFU由两部分组成:一部分负责地址判断和icb总线控制(e203_ifu_ift2icb.v),另一
    发表于 10-21 09:55

    华为携手伙伴发布教育行业E2E园区安全建网标准

    GITEX GLOBAL 2025期间,华为联合IEEE及行业客户发布《教育行业E2E园区安全建网标准》(以下简称《标准》)。该标准为教育机构构建安全、智能的园区网络提供了权威技术指引,标志着教育网络安全建设进入了标准化与规范化的新阶段。
    的头像 发表于 10-17 11:23 1155次阅读

    TUSB2E11 USB 2.0/eUSB2中继器技术解析与应用指南

    Texas Instruments TUSB2E11 USB 2.0 eUSB2中继器设计用于支持器件和主机模式。TUSB2E11支持USB低速 (LS)、全速 (FS) 和高速 (HS) 信号。该器件采用多项专利设计,可提供强
    的头像 发表于 09-12 11:36 1196次阅读
    TUSB<b class='flag-5'>2E</b>11 USB 2.0/eUSB<b class='flag-5'>2</b>中继器技术解析与应用指南

    Texas Instruments TUSB2E221 USB 2.0-eUSB2双中继器数据手册

    -USB 2.0中继器,支持器件和主机模式。TUSB2E221支持USB低速(LS)和全速(FS)信号以及高速(HS)信号。TUSB2E221设计用于连接eUSB2 eDSPr或eUSPr,在1.2V单端信号下工作。该器件采用多
    的头像 发表于 07-16 10:39 1226次阅读
    Texas Instruments TUSB<b class='flag-5'>2E</b>221 USB 2.0-eUSB<b class='flag-5'>2</b>双中继器数据手册

    Broadcom HEDS-9930 (E2/E2L) 评估板与AEDR_9930E2光学编码器数据手册

    Broadcom HEDS-9930 (E2/E2L) 评估板与AEDR_9930E2光学编码器数据手册
    的头像 发表于 05-21 19:01 1251次阅读
    Broadcom HEDS-9930 (<b class='flag-5'>E2</b>/<b class='flag-5'>E2</b>L) 评估板与AEDR_9930<b class='flag-5'>E2</b>光学编码器数据手册

    解读新发布的 Matter 1.4:推动智能家居设备操作性的关键升级

    着Matter 1.4的发布,智能家居和物联网(IoT)行业迎来了新的里程碑。Matter作为全球统一的智能家居互联协议,在操作性、安全和能效优化等方面取得了重大突破。本文将从Matter
    的头像 发表于 05-16 17:38 1142次阅读