Skip to content

Instantly share code, notes, and snippets.

@yujiepan-work
Last active June 11, 2024 09:50
Show Gist options
  • Save yujiepan-work/6f4d2b36252f0dce39160a6d07085f82 to your computer and use it in GitHub Desktop.
Save yujiepan-work/6f4d2b36252f0dce39160a6d07085f82 to your computer and use it in GitHub Desktop.
<?xml version="1.0"?>
<net name="Model9" version="11">
<layers>
<layer id="0" name="input_ids" type="Parameter" version="opset1">
<data shape="?,?" element_type="i64" />
<output>
<port id="0" precision="I64" names="input_ids">
<dim>-1</dim>
<dim>-1</dim>
</port>
</output>
</layer>
<layer id="1" name="self.embedding.weight" type="Const" version="opset1">
<data element_type="f32" shape="32, 2" offset="0" size="256" />
<output>
<port id="0" precision="FP32" names="self.embedding.weight">
<dim>32</dim>
<dim>2</dim>
</port>
</output>
</layer>
<layer id="2" name="__module.embedding/aten::embedding/Convert" type="Convert" version="opset1">
<data destination_type="i32" />
<input>
<port id="0" precision="I64">
<dim>-1</dim>
<dim>-1</dim>
</port>
</input>
<output>
<port id="1" precision="I32">
<dim>-1</dim>
<dim>-1</dim>
</port>
</output>
</layer>
<layer id="3" name="__module.embedding/aten::embedding/Constant" type="Const" version="opset1">
<data element_type="i32" shape="" offset="256" size="4" />
<output>
<port id="0" precision="I32" />
</output>
</layer>
<layer id="4" name="__module.embedding/aten::embedding/Gather" type="Gather" version="opset8">
<data batch_dims="0" />
<input>
<port id="0" precision="FP32">
<dim>32</dim>
<dim>2</dim>
</port>
<port id="1" precision="I32">
<dim>-1</dim>
<dim>-1</dim>
</port>
<port id="2" precision="I32" />
</input>
<output>
<port id="3" precision="FP32" names="23">
<dim>-1</dim>
<dim>-1</dim>
<dim>2</dim>
</port>
</output>
</layer>
<layer id="5" name="linear_0/aten::abs/Abs_1" type="Abs" version="opset1">
<input>
<port id="0" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>2</dim>
</port>
</input>
<output>
<port id="1" precision="FP32" names="28,44">
<dim>-1</dim>
<dim>-1</dim>
<dim>2</dim>
</port>
</output>
</layer>
<layer id="6" name="Constant_16812" type="Const" version="opset1">
<data element_type="f32" shape="1, 1, 1" offset="260" size="4" />
<output>
<port id="0" precision="FP32">
<dim>1</dim>
<dim>1</dim>
<dim>1</dim>
</port>
</output>
</layer>
<layer id="7" name="linear_0/aten::le/LessEqual" type="LessEqual" version="opset1">
<data auto_broadcast="numpy" />
<input>
<port id="0" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>2</dim>
</port>
<port id="1" precision="FP32">
<dim>1</dim>
<dim>1</dim>
<dim>1</dim>
</port>
</input>
<output>
<port id="2" precision="BOOL" names="45">
<dim>-1</dim>
<dim>-1</dim>
<dim>2</dim>
</port>
</output>
</layer>
<layer id="8" name="linear_0/aten::masked_fill/ConvertLike" type="Const" version="opset1">
<data element_type="f32" shape="" offset="256" size="4" />
<output>
<port id="0" precision="FP32" />
</output>
</layer>
<layer id="9" name="linear_0/aten::masked_fill/Select" type="Select" version="opset1">
<data auto_broadcast="numpy" />
<input>
<port id="0" precision="BOOL">
<dim>-1</dim>
<dim>-1</dim>
<dim>2</dim>
</port>
<port id="1" precision="FP32" />
<port id="2" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>2</dim>
</port>
</input>
<output>
<port id="3" precision="FP32" names="46">
<dim>-1</dim>
<dim>-1</dim>
<dim>2</dim>
</port>
</output>
</layer>
<layer id="10" name="self.linear2.weight" type="Const" version="opset1">
<data element_type="f32" shape="4, 2" offset="264" size="32" />
<output>
<port id="0" precision="FP32" names="self.linear2.weight">
<dim>4</dim>
<dim>2</dim>
</port>
</output>
</layer>
<layer id="11" name="__module.linear2/aten::linear/MatMul" type="MatMul" version="opset1">
<data transpose_a="false" transpose_b="true" />
<input>
<port id="0" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>2</dim>
</port>
<port id="1" precision="FP32">
<dim>4</dim>
<dim>2</dim>
</port>
</input>
<output>
<port id="2" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>4</dim>
</port>
</output>
</layer>
<layer id="13" name="Constant_16813" type="Const" version="opset1">
<data element_type="f32" shape="1, 1, 1" offset="296" size="4" />
<output>
<port id="0" precision="FP32">
<dim>1</dim>
<dim>1</dim>
<dim>1</dim>
</port>
</output>
</layer>
<layer id="14" name="linear_0/aten::le/LessEqual_1" type="LessEqual" version="opset1">
<data auto_broadcast="numpy" />
<input>
<port id="0" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>2</dim>
</port>
<port id="1" precision="FP32">
<dim>1</dim>
<dim>1</dim>
<dim>1</dim>
</port>
</input>
<output>
<port id="2" precision="BOOL" names="29">
<dim>-1</dim>
<dim>-1</dim>
<dim>2</dim>
</port>
</output>
</layer>
<layer id="15" name="linear_0/aten::masked_fill/ConvertLike_1" type="Const" version="opset1">
<data element_type="f32" shape="" offset="256" size="4" />
<output>
<port id="0" precision="FP32" />
</output>
</layer>
<layer id="16" name="linear_0/aten::masked_fill/Select_1" type="Select" version="opset1">
<data auto_broadcast="numpy" />
<input>
<port id="0" precision="BOOL">
<dim>-1</dim>
<dim>-1</dim>
<dim>2</dim>
</port>
<port id="1" precision="FP32" />
<port id="2" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>2</dim>
</port>
</input>
<output>
<port id="3" precision="FP32" names="30">
<dim>-1</dim>
<dim>-1</dim>
<dim>2</dim>
</port>
</output>
</layer>
<layer id="17" name="self.linear1.weight" type="Const" version="opset1">
<data element_type="f32" shape="3, 2" offset="300" size="24" />
<output>
<port id="0" precision="FP32" names="self.linear1.weight">
<dim>3</dim>
<dim>2</dim>
</port>
</output>
</layer>
<layer id="18" name="__module.linear1/aten::linear/MatMul" type="MatMul" version="opset1">
<data transpose_a="false" transpose_b="true" />
<input>
<port id="0" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>2</dim>
</port>
<port id="1" precision="FP32">
<dim>3</dim>
<dim>2</dim>
</port>
</input>
<output>
<port id="2" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>3</dim>
</port>
</output>
</layer>
<layer id="19" name="Constant_16814" type="Const" version="opset1">
<data element_type="f32" shape="1, 1, 3" offset="324" size="12" />
<output>
<port id="0" precision="FP32">
<dim>1</dim>
<dim>1</dim>
<dim>3</dim>
</port>
</output>
</layer>
<layer id="20" name="__module.linear1/aten::linear/Add" type="Add" version="opset1">
<data auto_broadcast="numpy" />
<input>
<port id="0" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>3</dim>
</port>
<port id="1" precision="FP32">
<dim>1</dim>
<dim>1</dim>
<dim>3</dim>
</port>
</input>
<output>
<port id="2" precision="FP32" names="31">
<dim>-1</dim>
<dim>-1</dim>
<dim>3</dim>
</port>
</output>
</layer>
<layer id="21" name="linear_0/aten::abs/Abs_2" type="Abs" version="opset1">
<input>
<port id="0" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>3</dim>
</port>
</input>
<output>
<port id="1" precision="FP32" names="36">
<dim>-1</dim>
<dim>-1</dim>
<dim>3</dim>
</port>
</output>
</layer>
<layer id="22" name="Constant_16815" type="Const" version="opset1">
<data element_type="f32" shape="1, 1, 1" offset="336" size="4" />
<output>
<port id="0" precision="FP32">
<dim>1</dim>
<dim>1</dim>
<dim>1</dim>
</port>
</output>
</layer>
<layer id="23" name="linear_0/aten::le/LessEqual_2" type="LessEqual" version="opset1">
<data auto_broadcast="numpy" />
<input>
<port id="0" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>3</dim>
</port>
<port id="1" precision="FP32">
<dim>1</dim>
<dim>1</dim>
<dim>1</dim>
</port>
</input>
<output>
<port id="2" precision="BOOL" names="37">
<dim>-1</dim>
<dim>-1</dim>
<dim>3</dim>
</port>
</output>
</layer>
<layer id="24" name="linear_0/aten::masked_fill/ConvertLike_2" type="Const" version="opset1">
<data element_type="f32" shape="" offset="256" size="4" />
<output>
<port id="0" precision="FP32" />
</output>
</layer>
<layer id="25" name="linear_0/aten::masked_fill/Select_2" type="Select" version="opset1">
<data auto_broadcast="numpy" />
<input>
<port id="0" precision="BOOL">
<dim>-1</dim>
<dim>-1</dim>
<dim>3</dim>
</port>
<port id="1" precision="FP32" />
<port id="2" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>3</dim>
</port>
</input>
<output>
<port id="3" precision="FP32" names="38">
<dim>-1</dim>
<dim>-1</dim>
<dim>3</dim>
</port>
</output>
</layer>
<layer id="26" name="self.linear3.weight" type="Const" version="opset1">
<data element_type="f32" shape="5, 3" offset="340" size="60" />
<output>
<port id="0" precision="FP32" names="self.linear3.weight">
<dim>5</dim>
<dim>3</dim>
</port>
</output>
</layer>
<layer id="27" name="__module.linear3/aten::linear/MatMul" type="MatMul" version="opset1">
<data transpose_a="false" transpose_b="true" />
<input>
<port id="0" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>3</dim>
</port>
<port id="1" precision="FP32">
<dim>5</dim>
<dim>3</dim>
</port>
</input>
<output>
<port id="2" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>5</dim>
</port>
</output>
</layer>
<layer id="28" name="Constant_16816" type="Const" version="opset1">
<data element_type="f32" shape="1, 1, 5" offset="400" size="20" />
<output>
<port id="0" precision="FP32">
<dim>1</dim>
<dim>1</dim>
<dim>5</dim>
</port>
</output>
</layer>
<layer id="29" name="__module.linear3/aten::linear/Add" type="Add" version="opset1">
<data auto_broadcast="numpy" />
<input>
<port id="0" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>5</dim>
</port>
<port id="1" precision="FP32">
<dim>1</dim>
<dim>1</dim>
<dim>5</dim>
</port>
</input>
<output>
<port id="2" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>5</dim>
</port>
</output>
</layer>
<layer id="30" name="Result_15525" type="Result" version="opset1">
<input>
<port id="0" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>5</dim>
</port>
</input>
</layer>
<layer id="12" name="Result_15524" type="Result" version="opset1">
<input>
<port id="0" precision="FP32">
<dim>-1</dim>
<dim>-1</dim>
<dim>4</dim>
</port>
</input>
</layer>
</layers>
<edges>
<edge from-layer="0" from-port="0" to-layer="2" to-port="0" />
<edge from-layer="1" from-port="0" to-layer="4" to-port="0" />
<edge from-layer="2" from-port="1" to-layer="4" to-port="1" />
<edge from-layer="3" from-port="0" to-layer="4" to-port="2" />
<edge from-layer="4" from-port="3" to-layer="16" to-port="2" />
<edge from-layer="4" from-port="3" to-layer="9" to-port="2" />
<edge from-layer="4" from-port="3" to-layer="5" to-port="0" />
<edge from-layer="5" from-port="1" to-layer="7" to-port="0" />
<edge from-layer="5" from-port="1" to-layer="14" to-port="0" />
<edge from-layer="6" from-port="0" to-layer="7" to-port="1" />
<edge from-layer="7" from-port="2" to-layer="9" to-port="0" />
<edge from-layer="8" from-port="0" to-layer="9" to-port="1" />
<edge from-layer="9" from-port="3" to-layer="11" to-port="0" />
<edge from-layer="10" from-port="0" to-layer="11" to-port="1" />
<edge from-layer="11" from-port="2" to-layer="12" to-port="0" />
<edge from-layer="13" from-port="0" to-layer="14" to-port="1" />
<edge from-layer="14" from-port="2" to-layer="16" to-port="0" />
<edge from-layer="15" from-port="0" to-layer="16" to-port="1" />
<edge from-layer="16" from-port="3" to-layer="18" to-port="0" />
<edge from-layer="17" from-port="0" to-layer="18" to-port="1" />
<edge from-layer="18" from-port="2" to-layer="20" to-port="0" />
<edge from-layer="19" from-port="0" to-layer="20" to-port="1" />
<edge from-layer="20" from-port="2" to-layer="21" to-port="0" />
<edge from-layer="20" from-port="2" to-layer="25" to-port="2" />
<edge from-layer="21" from-port="1" to-layer="23" to-port="0" />
<edge from-layer="22" from-port="0" to-layer="23" to-port="1" />
<edge from-layer="23" from-port="2" to-layer="25" to-port="0" />
<edge from-layer="24" from-port="0" to-layer="25" to-port="1" />
<edge from-layer="25" from-port="3" to-layer="27" to-port="0" />
<edge from-layer="26" from-port="0" to-layer="27" to-port="1" />
<edge from-layer="27" from-port="2" to-layer="29" to-port="0" />
<edge from-layer="28" from-port="0" to-layer="29" to-port="1" />
<edge from-layer="29" from-port="2" to-layer="30" to-port="0" />
</edges>
<rt_info>
<Runtime_version value="2024.1.0-15008-f4afc983258-releases/2024/1" />
<conversion_parameters>
<framework value="pytorch" />
<is_python_object value="True" />
</conversion_parameters>
</rt_info>
</net>
strict digraph {
"0 /nncf_model_input_0" [id=0, type=nncf_model_input];
"1 embedding.weight" [id=1, type=nncf_model_const];
"2 ThreeLinearModel/Embedding[embedding]/embedding_0" [id=2, type=embedding];
"3 linear1.weight" [id=3, type=nncf_model_const, style=filled, fillcolor="#dddddd"];
"4 linear1.bias" [id=4, type=nncf_model_const, style=filled, fillcolor="#dddddd"];
"5 ThreeLinearModel/Linear[linear1]/ActivationsSparsifier/abs_0" [id=5, type=abs, style=filled, fillcolor="#dddddd"];
"6 ThreeLinearModel/Linear[linear1]/ActivationsSparsifier/le_0" [id=6, type=le, style=filled, fillcolor="#dddddd"];
"7 ThreeLinearModel/Linear[linear1]/ActivationsSparsifier/masked_fill_0" [id=7, type=masked_fill, style=filled, fillcolor="#dddddd"];
"8 ThreeLinearModel/Linear[linear1]/linear_0" [id=8, type=linear, style=filled, fillcolor="#dddddd"];
"9 linear3.weight" [id=9, type=nncf_model_const, style=filled, fillcolor="#abcdef"];
"10 linear3.bias" [id=10, type=nncf_model_const, style=filled, fillcolor="#abcdef"];
"11 ThreeLinearModel/Linear[linear3]/ActivationsSparsifier/abs_0" [id=11, type=abs, style=filled, fillcolor="#abcdef"];
"12 ThreeLinearModel/Linear[linear3]/ActivationsSparsifier/le_0" [id=12, type=le, style=filled, fillcolor="#abcdef"];
"13 ThreeLinearModel/Linear[linear3]/ActivationsSparsifier/masked_fill_0" [id=13, type=masked_fill, style=filled, fillcolor="#abcdef"];
"14 ThreeLinearModel/Linear[linear3]/linear_0" [id=14, type=linear, style=filled, fillcolor="#abcdef"];
"15 linear2.weight" [id=15, type=nncf_model_const, style=filled, fillcolor="#ffddc1"];
"16 ThreeLinearModel/Linear[linear2]/ActivationsSparsifier/abs_0" [id=16, type=abs, style=filled, fillcolor="#ffddc1"];
"17 ThreeLinearModel/Linear[linear2]/ActivationsSparsifier/le_0" [id=17, type=le, style=filled, fillcolor="#ffddc1"];
"18 ThreeLinearModel/Linear[linear2]/ActivationsSparsifier/masked_fill_0" [id=18, type=masked_fill, style=filled, fillcolor="#ffddc1"];
"19 ThreeLinearModel/Linear[linear2]/linear_0" [id=19, type=linear, style=filled, fillcolor="#ffddc1"];
"20 /nncf_model_output_0" [id=20, type=nncf_model_output];
"21 /nncf_model_output_1" [id=21, type=nncf_model_output];
"0 /nncf_model_input_0" -> "2 ThreeLinearModel/Embedding[embedding]/embedding_0";
"1 embedding.weight" -> "2 ThreeLinearModel/Embedding[embedding]/embedding_0";
"2 ThreeLinearModel/Embedding[embedding]/embedding_0" -> "5 ThreeLinearModel/Linear[linear1]/ActivationsSparsifier/abs_0";
"2 ThreeLinearModel/Embedding[embedding]/embedding_0" -> "7 ThreeLinearModel/Linear[linear1]/ActivationsSparsifier/masked_fill_0";
"2 ThreeLinearModel/Embedding[embedding]/embedding_0" -> "16 ThreeLinearModel/Linear[linear2]/ActivationsSparsifier/abs_0";
"2 ThreeLinearModel/Embedding[embedding]/embedding_0" -> "18 ThreeLinearModel/Linear[linear2]/ActivationsSparsifier/masked_fill_0";
"3 linear1.weight" -> "8 ThreeLinearModel/Linear[linear1]/linear_0";
"4 linear1.bias" -> "8 ThreeLinearModel/Linear[linear1]/linear_0";
"5 ThreeLinearModel/Linear[linear1]/ActivationsSparsifier/abs_0" -> "6 ThreeLinearModel/Linear[linear1]/ActivationsSparsifier/le_0";
"6 ThreeLinearModel/Linear[linear1]/ActivationsSparsifier/le_0" -> "7 ThreeLinearModel/Linear[linear1]/ActivationsSparsifier/masked_fill_0";
"7 ThreeLinearModel/Linear[linear1]/ActivationsSparsifier/masked_fill_0" -> "8 ThreeLinearModel/Linear[linear1]/linear_0";
"8 ThreeLinearModel/Linear[linear1]/linear_0" -> "11 ThreeLinearModel/Linear[linear3]/ActivationsSparsifier/abs_0";
"8 ThreeLinearModel/Linear[linear1]/linear_0" -> "13 ThreeLinearModel/Linear[linear3]/ActivationsSparsifier/masked_fill_0";
"9 linear3.weight" -> "14 ThreeLinearModel/Linear[linear3]/linear_0";
"10 linear3.bias" -> "14 ThreeLinearModel/Linear[linear3]/linear_0";
"11 ThreeLinearModel/Linear[linear3]/ActivationsSparsifier/abs_0" -> "12 ThreeLinearModel/Linear[linear3]/ActivationsSparsifier/le_0";
"12 ThreeLinearModel/Linear[linear3]/ActivationsSparsifier/le_0" -> "13 ThreeLinearModel/Linear[linear3]/ActivationsSparsifier/masked_fill_0";
"13 ThreeLinearModel/Linear[linear3]/ActivationsSparsifier/masked_fill_0" -> "14 ThreeLinearModel/Linear[linear3]/linear_0";
"14 ThreeLinearModel/Linear[linear3]/linear_0" -> "20 /nncf_model_output_0";
"15 linear2.weight" -> "19 ThreeLinearModel/Linear[linear2]/linear_0";
"16 ThreeLinearModel/Linear[linear2]/ActivationsSparsifier/abs_0" -> "17 ThreeLinearModel/Linear[linear2]/ActivationsSparsifier/le_0";
"17 ThreeLinearModel/Linear[linear2]/ActivationsSparsifier/le_0" -> "18 ThreeLinearModel/Linear[linear2]/ActivationsSparsifier/masked_fill_0";
"18 ThreeLinearModel/Linear[linear2]/ActivationsSparsifier/masked_fill_0" -> "19 ThreeLinearModel/Linear[linear2]/linear_0";
"19 ThreeLinearModel/Linear[linear2]/linear_0" -> "21 /nncf_model_output_1";
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment