diff --git a/.gitignore b/.gitignore index 28eb079a..223d5b7c 100644 --- a/.gitignore +++ b/.gitignore @@ -22,4 +22,6 @@ saved_model/ node_modules/ .act.secrets -.act.env \ No newline at end of file +.act.env + +*.sarif \ No newline at end of file diff --git a/make_test_op/make_DeformConv2d.py b/make_test_op/make_DeformConv2d.py new file mode 100644 index 00000000..60c82d56 --- /dev/null +++ b/make_test_op/make_DeformConv2d.py @@ -0,0 +1,37 @@ +#! /usr/bin/env python + +import torch +import torch.nn as nn +import numpy as np +import onnx +from onnxsim import simplify +import numpy as np +np.random.seed(0) +from torchvision.ops import deform_conv2d + +class Model(nn.Module): + def __init__(self): + super(Model, self).__init__() + + def forward(self, x): + kh, kw = 3, 3 + weight = torch.rand(5, 3, kh, kw) + offset = torch.rand(4, 2 * kh * kw, 8, 8) + mask = torch.rand(4, kh * kw, 8, 8) + return deform_conv2d(input, offset, weight, mask=mask) + +if __name__ == "__main__": + OPSET=19 + MODEL = f'DeformConv' + model = Model() + onnx_file = f"{MODEL}_{OPSET}.onnx" + x = torch.randn(4, 3, 10, 10) + onnx_program = torch.onnx.dynamo_export(model, x) + onnx_program.save(onnx_file) + + # model_onnx1 = onnx.load(onnx_file) + # model_onnx1 = onnx.shape_inference.infer_shapes(model_onnx1) + # onnx.save(model_onnx1, onnx_file) + # model_onnx2 = onnx.load(onnx_file) + # model_simp, check = simplify(model_onnx2) + # onnx.save(model_simp, onnx_file) \ No newline at end of file diff --git a/make_test_op/make_GroupNormalization.py b/make_test_op/make_GroupNormalization.py index 8f63c6b7..16974736 100644 --- a/make_test_op/make_GroupNormalization.py +++ b/make_test_op/make_GroupNormalization.py @@ -91,4 +91,8 @@ def forward(self, x): onnx.save(model_onnx1, onnx_file) model_onnx2 = onnx.load(onnx_file) model_simp, check = simplify(model_onnx2) - onnx.save(model_simp, onnx_file) \ No newline at end of file + onnx.save(model_simp, onnx_file) + + onnx_file = f"{MODEL}_{OPSET}_dynamo.onnx" + onnx_program = torch.onnx.dynamo_export(model, x) + onnx_program.save(onnx_file) \ No newline at end of file