SwitchN

产品支持情况

产品 是否支持
Ascend 950PR&950DT系列产品 √
Atlas A3系列产品 √
Atlas A2系列产品 √
Atlas 200I/500 A2推理产品 √
Atlas推理系列产品 √
Atlas训练系列产品 √

功能说明

SwitchN为控制流基础算子,根据整型张量输入pred_value将输入张量data转发到对应的输出端口。output为动态输出,其中只有一个输出会收到data,且其形状与数据类型与输入data一致。该算子通常与Merge算子配合实现多路分支控制。

参数说明

参数名 输入/输出/属性 描述 数据类型 数据格式
data 输入 待转发的张量。 float16、float32、float64、int8、int16、int32、int64、uint8、uint16、uint32、uint64、bool ND
pred_value 输入 int64张量,决定数据被转发到哪个输出端口。 DT_INT64 ND
output 动态输出 输出张量,其中一个会收到data,数据类型同data。 float16、float32、float64、int8、int16、int32、int64、uint8、uint16、uint32、uint64、bool ND

约束说明

  • 输入data的数据类型必须属于float16、float32、float64、int8、int16、int32、int64、uint8、uint16、uint32、uint64、bool之一。
  • 输入pred_value的数据类型必须为DT_INT64。

调用说明

SwitchN算子为控制流基础算子,通常作为图中多路分支选择节点使用,不单独调用。

调用方式 调用样例 说明
图模式调用 test_geir_switch_n 通过算子IR构图方式调用SwitchN算子