CANN/GE TimeBatch时间批处理功能
# TimeBatch【免费下载链接】geGEGraph 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实现。使用方法用户在DataFlow构图时通过给FlowNode的输入设置属性来添加TimeBatch功能。示例如下。TimeBatch time_batch {}; // 按需求设置time_batch中各属性的值 time_batch.time_window 10; time_batch.batch_dim 5; time_batch.drop_remainder true; DataFlowInputAttr flow_attr {DataFlowAttrType::TIME_BATCH, time_batch}; std::vectorDataFlowInputAttr flow_attrs {flow_attr}; // 然后通过FlowNode的MapInput设置 FlowNode::MapInput(xx, xx, xx, flow_attrs);属性名称数据类型取值说明time_windowint64_t整型单位ms当值0时表示按该时间窗来组batch当值为-1时表示按时间分段来组batch其他值报错。batch_dimint64_t只有设置了time_window时该参数才生效。取值范围[-1,shape维度]。- 默认为-1表示数据输出shape会在第0维添加一个batch维。- shape维度batch_dim0时表示按某个维度组batch。- batch_dimshape维度或者-1时报错。drop_remainderbool只有设置了time_window时该参数才生效。仅在time_window0时生效选择不足time_window时是否丢弃默认false不丢弃。true则丢弃。举例如下假如time_window5ms输入数据时长为3ms则- drop_remainder不配置或者配置为false时不丢弃输入数据。- drop_remainder配置为true时如果输入数据未携带EOS或者SEG会一直等待不丢弃数据。如果输入数据只携带了SEG则丢弃数据。如果输入数据携带了EOS标记则丢弃输入数据只传递EOS标记。- 如果输入数据未携带EOS或者SEG会一直等待不丢弃数据。- 如果输入数据只携带了SEG则丢弃数据。- 如果输入数据携带了EOS标记则丢弃输入数据只传递EOS标记。time_intervalint64_t未使能timeoutint64_t未使能flagint32_t未使能paddingbool未使能使用注意事项当前Batch特性无法做负荷分担因此如果使用2P环境需要在ge初始化时添加{ge.exec.logicalDeviceClusterDeployMode, SINGLE}, {ge.exec.logicalDeviceId, [0:0]}。其中logicalDeviceId可以是[0:0]也可以是[0:1]详细介绍如下。logicalDeviceClusterDeployMode为SINGLE时用于指定模型部署在某个指定的设备上。配置格式[node_id:device_id]node_id昇腾AI处理器逻辑ID从0开始表示资源配置文件中第几个设备。device_id昇腾AI处理器物理ID。【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考