diff --git a/testdata/dnn/onnx/data/input_matmul_bcast.npy b/testdata/dnn/onnx/data/input_matmul_bcast.npy new file mode 100644 index 000000000..1220926e8 Binary files /dev/null and b/testdata/dnn/onnx/data/input_matmul_bcast.npy differ diff --git a/testdata/dnn/onnx/data/output_matmul_bcast.npy b/testdata/dnn/onnx/data/output_matmul_bcast.npy new file mode 100644 index 000000000..413262580 Binary files /dev/null and b/testdata/dnn/onnx/data/output_matmul_bcast.npy differ diff --git a/testdata/dnn/onnx/generate_onnx_models_with_onnxscript.py b/testdata/dnn/onnx/generate_onnx_models_with_onnxscript.py index 35cf57eb5..7240e044c 100644 --- a/testdata/dnn/onnx/generate_onnx_models_with_onnxscript.py +++ b/testdata/dnn/onnx/generate_onnx_models_with_onnxscript.py @@ -380,3 +380,13 @@ def clip_div_shared_constant(x: ost.FLOAT[1, 8, 12, 10]) -> ost.FLOAT[1, 8, 12, clip = op.Clip(div, Constant_output_0, Constant_1_output_0) return clip make_model_and_data(clip_div_shared_constant, np.random.rand(1, 8, 12, 10).astype(np.float32)) + +''' Subgraph [Input] -> MatMul -> [Outpunt] +''' + +B = np.random.randn(16, 8).astype(np.float32) + +@ost.script() +def matmul_bcast(x: ost.FLOAT[64, 1, 16]) -> ost.FLOAT[64, 1, 8]: + return op.MatMul(x, op.Constant(value=onnx.numpy_helper.from_array(B))) +make_model_and_data(matmul_bcast, np.random.randn(64, 1, 16).astype(np.float32)) diff --git a/testdata/dnn/onnx/models/matmul_bcast.onnx b/testdata/dnn/onnx/models/matmul_bcast.onnx new file mode 100644 index 000000000..978d33233 Binary files /dev/null and b/testdata/dnn/onnx/models/matmul_bcast.onnx differ