op { | |
name: "QuantizedMatMulWithBias" | |
input_arg { | |
name: "a" | |
type_attr: "T1" | |
} | |
input_arg { | |
name: "b" | |
type_attr: "T2" | |
} | |
input_arg { | |
name: "bias" | |
type_attr: "Tbias" | |
} | |
input_arg { | |
name: "min_a" | |
type: DT_FLOAT | |
} | |
input_arg { | |
name: "max_a" | |
type: DT_FLOAT | |
} | |
input_arg { | |
name: "min_b" | |
type: DT_FLOAT | |
} | |
input_arg { | |
name: "max_b" | |
type: DT_FLOAT | |
} | |
output_arg { | |
name: "out" | |
type_attr: "Toutput" | |
} | |
output_arg { | |
name: "min_out" | |
type: DT_FLOAT | |
} | |
output_arg { | |
name: "max_out" | |
type: DT_FLOAT | |
} | |
attr { | |
name: "T1" | |
type: "type" | |
allowed_values { | |
list { | |
type: DT_QINT8 | |
type: DT_QUINT8 | |
type: DT_QINT32 | |
type: DT_QINT16 | |
type: DT_QUINT16 | |
} | |
} | |
} | |
attr { | |
name: "T2" | |
type: "type" | |
allowed_values { | |
list { | |
type: DT_QINT8 | |
type: DT_QUINT8 | |
type: DT_QINT32 | |
type: DT_QINT16 | |
type: DT_QUINT16 | |
} | |
} | |
} | |
attr { | |
name: "Tbias" | |
type: "type" | |
allowed_values { | |
list { | |
type: DT_FLOAT | |
type: DT_QINT32 | |
} | |
} | |
} | |
attr { | |
name: "Toutput" | |
type: "type" | |
default_value { | |
type: DT_QINT32 | |
} | |
allowed_values { | |
list { | |
type: DT_QINT8 | |
type: DT_QUINT8 | |
type: DT_QINT32 | |
type: DT_QINT16 | |
type: DT_QUINT16 | |
} | |
} | |
} | |
attr { | |
name: "transpose_a" | |
type: "bool" | |
default_value { | |
b: false | |
} | |
} | |
attr { | |
name: "transpose_b" | |
type: "bool" | |
default_value { | |
b: false | |
} | |
} | |
attr { | |
name: "input_quant_mode" | |
type: "string" | |
default_value { | |
s: "MIN_FIRST" | |
} | |
allowed_values { | |
list { | |
s: "MIN_FIRST" | |
s: "SCALED" | |
} | |
} | |
} | |
} |