AI CPU算子ST测试用例定义文件参数解释
参数 |
说明 |
|
---|---|---|
Test_xxx_xx |
- |
必选。string类型。 测试用例的名称。 |
Input[xx] |
- |
必选。 算子的输入。
须知:
一个算子所有Input中参数取值的个数都要一致,否则测试用例生成会失败。 例如:Input[01]的format支持的类型个数2,则Input[02]的format支持的类型个数也需要为2。 同理,所有Input[xx]中的type、shape、data_distribute和value_range的取值个数也需要保持一致。 |
- |
Name |
必选。 算子输入的名称,string类型。 若配置期望函数,则算子输入的名称需与期望函数中输入的名称保持完全一致。 |
- |
Format |
必选。 String或者String的一维数组。 输入tensor数据的排布格式,不允许为空。 常见的数据排布格式如下:
注意,Format、Type和Shape的数量需保持一致。 |
- |
OriginFormat |
可选。Tensor的原始format。 不带此字段时,默认Tensor的实现format与原始format一致。 |
- |
Type |
必选。 String或者String的一维数组。 输入数据支持的数据类型。
注意,Format、Type和Shape的数量需保持一致。 |
- |
Shape |
必选。 int类型,一维或者二维数组。 输入tensor支持的形状。 例如: [8, 3, 256, 256]或[[1, 3, 256, 256], [8, 3, 256, 256]]。 若输入非法的形状会报错,例如:[0]。 注意,Format、Type和Shape的数量需保持一致。 |
- |
OriginShape |
可选。Tensor的原始shape。 不带此字段时,默认Tensor的实现shape与原始shape一致。 |
- |
Value |
可选。 路径String或者Tensor数组。 若用户需要指定输入数据时,可通过增加“Value”字段进行配置。有如下两种配置方式: 直接输入tensor数据,如tensor的值为[1,2,3,4]。 "Value": [1,2,3,4] 输入二进制数据文件的路径,如数据文件为test.bin时。 "Value": "home/HiHwAiUser/projects/test.bin" 二进制数据bin文件需用户自己准备。可以输入绝对路径。若用户添加了“Value”字段,“DataDistribute”和“ValueRange”字段将会被隐藏。同时需要保证“Format”,"Type","Shape"字段的值与“Value”数据一致。 |
- |
ValueRange |
必选。 int类型或者float类型,一维或者二维数组。 取值范围,不能为空。 为[min_value, max_value]且min_value <=max_value。 |
- |
DataDistribute |
必选。 String或者String的一维数组。
使用哪种数据分布方式生成测试数据,支持的分布方式有:
|
- |
isConst |
可选。 bool类型,默认为false。
|
Output[xx] |
- |
必选。 算子输出。
须知:
Output中参数取值的个数都要与Input一致,否则测试用例生成会失败。 例如:Input的format支持的类型个数2,则Output的format支持的类型个数也需要为2。 |
- |
Name |
必选。 算子输入的名称,string类型。 若配置期望函数,则算子输出的名称与期望函数中输出的名称需保持完全一致。 |
- |
Format |
必选。 String或者String的一维数组。 输出tensor数据的排布格式,不允许为空。 常见的数据排布格式如下:
注意,Format、Type和Shape的数量需保持一致。 |
- |
OriginFormat |
可选。Tensor的原始format。 不带此字段时,默认Tensor的实现format与原始format一致。 |
- |
Type |
必选。 String或者String的一维数组。 输出数据支持的数据类型:
注意,Format、Type和Shape的数量需保持一致。 |
- |
Shape |
必选。 int类型,一维或者二维数组。 输入tensor支持的形状。 例如: [8, 3, 256, 256]或[[1, 3, 256, 256], [8, 3, 256, 256]]。 若输入非法的形状会报错,例如:[0]。 注意,Format、Type和Shape的数量需保持一致。 |
- |
OriginShape |
可选。Tensor的原始shape。 不带此字段时,默认Tensor的实现shape与原始shape一致。 |
Attribute |
- |
可选。 |
- |
Name |
若配置attr,则为必选。 string类型。 属性的名称,不为空。 |
- |
Type |
若配置attr,则为必选属性支持的类型。 string类型。 输出数据支持的数据类型:
|
- |
Value |
若配置attr,则为必选,且不允许为null。 string类型。 属性值,根据type的不同,属性值不同。
|
Expected Result Verification |
- |
可选。 |
- |
Script Path |
算子期望数据生成函数路径。 |
- |
Script Function |
算子期望数据生成函数名称。 |
K-Level Test Cases |
- |
可选。 |
- |
Fuzz Script Path |
可选。 路径String类型。 fuzz生成测试参数的脚本路径的绝对路径或者相对路径。 |
- |
Fuzz Case Num |
可选。 int类型。 利用fuzz脚本生成测试用例数量,范围为1-2000。 |
- |
Fuzz Function |
可选。 String类型。 fuzz脚本中生成fuzz输入的函数名,默认为:“fuzz_branch”。 |
- 当算子信息定义文件(*.ini)中inputx.paramType=optional时,生成的算子测试用例中inputx的"format"需配置为"UNDEFINED"或"RESERVED","type"为"UNDEFINED"。
- 算子信息定义文件(*.ini)Tensor的实现format中包含华为自研数据格式,且Tensor的实现format与原始format不同时,用户需在"OriginFormat"和"OriginShape"中填入原始format和shape,将OriginFormat与OriginShape转成离线模型需要的format与shape。
- "OriginFormat"输入为原始算子支持的数据格式,个数必须与"Format"个数保持一致。
- "OriginShape"的输入值必须与"Shape"一一对应,且与"Format"和"OriginFormat"格式相匹配。
- Input[xx]、Output[xx]、Attr中除了name和Attr的Type以外的所有参数均支持fuzz输入。