news 2026/9/10 19:20:14

CANN/GE dataflow.TimeBatch功能

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CANN/GE dataflow.TimeBatch功能

# dataflow.TimeBatch

【免费下载链接】geGE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力,并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge

产品支持情况

  • Atlas A3 训练系列产品/Atlas A3 推理系列产品:支持
  • Atlas A2 推理系列产品/Atlas A2 训练系列产品:支持

函数功能

TimeBatch功能是基于UDF为前提的。

正常模型每次处理一个数据,当需要一次处理一批数据时,就需要将这批数据组成一个batch。最基本的batch方式是将这批N个数据直接拼接,然后shape前加N,而某些场景需要将某段或者某几段时间数据组成一个batch,并且按特定的维度拼接,则可以通过使用TimeBatch功能来组batch。

在ASR(Automatic Speech Recognition)自动语音识别场景下,存在按定长时间段组batch或按时间分段(时间不连续)组整批batch两种诉求,可以通过TimeBatch实现。

函数原型

TimeBatch(time_window=0, batch_dim=0, drop_remainder=False)

参数说明

参数名称数据类型取值说明
time_windowint64_t整型(单位ms),当值>0时表示按该时间窗来组batch,当值为-1时表示按时间分段来组batch,其它值报错。
batch_dimint64_t只有设置了time_window时,该参数才生效。取值范围[-1,shape维度]。

- 默认为-1表示数据输出shape会在第0维添加一个batch维。
- shape维度>batch_dim>=0时表示按某个维度组batch。
- batch_dim>shape维度或者<-1时报错。
drop_remainderBool只有设置了time_window时,该参数才生效。
仅在time_window>0时生效,选择不足time_window时是否丢弃,默认false不丢弃。true则丢弃。举例如下:
假如time_window=5ms,输入数据时长为3ms,则:

- drop_remainder不配置或者配置为false时,不丢弃输入数据。
- drop_remainder配置为true时如果输入数据未携带EOS或者SEG,会一直等待,不丢弃数据。如果输入数据只携带了SEG,则丢弃数据。如果输入数据携带了EOS标记,则丢弃输入数据,只传递EOS标记。
- 如果输入数据未携带EOS或者SEG,会一直等待,不丢弃数据。
- 如果输入数据只携带了SEG,则丢弃数据。
- 如果输入数据携带了EOS标记,则丢弃输入数据,只传递EOS标记。

返回值

正常场景下返回None。

返回“TypeError”表示参数类型不正确。

调用示例

import dataflow as df # 按需设置time_batch中的各个属性值 time_batch = df.TimeBatch() time_batch.time_window = 5 time_batch.batch_dim = 0 # 通过FlowNode的map_input接口使用 df.FlowNode(...).map_input(..., [time_batch])

约束说明

当前Batch特性无法做负荷分担,因此如果使用2P环境,需要在ge初始化时添加{"ge.exec.logicalDeviceClusterDeployMode", "SINGLE"}, {"ge.exec.logicalDeviceId", "[0:0]"}。其中logicalDeviceId可以是[0:0],也可以是[0:1]。logicalDeviceId解释如下。

logical_device_cluster_deploy_mode为SINGLE时,用于指定模型部署在某个指定的设备上。

配置格式:[node_id:device_id]

  • node_id:昇腾AI处理器逻辑ID,从0开始,表示资源配置文件中第几个设备。
  • device_id:昇腾AI处理器物理ID。

【免费下载链接】geGE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力,并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/10 19:16:10

2026年大专生必备:数据分析技能与就业指南

1. 为什么2026年的大专生必须掌握数据分析&#xff1f;大数据技术专业的学生在2026年毕业时将面临一个完全不同的就业市场。根据LinkedIn发布的《2025年最紧缺技能报告》&#xff0c;数据分析能力已经连续五年位居企业最需求技能前三名。作为即将毕业的大专生&#xff0c;掌握数…

作者头像 李华
网站建设 2026/9/10 19:15:50

MoE、推理模型、多模态分不清?一文理清大模型选型三大维度

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/10 19:14:17

Selenium自动化整活靶场:电子神庙项目踩坑笔记

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/10 19:12:06

Material3 HorizontalUncontainedCarousel问题解析与替代方案

1. HorizontalUncontainedCarousel组件问题解析 最近在Material3组件库中尝试使用HorizontalUncontainedCarousel时遇到了无法调用的问题。这个组件在官方文档中被描述为"一个不限制内容边界的水平轮播容器"&#xff0c;理论上应该能实现类似电商APP首页那种可以无限…

作者头像 李华