Beispiel #1
0
 def input_symbolic_execution(self, inp: Tensor):
     input_quant_symbolic_kwargs = self.symbolic_kwargs['input_quant_symbolic_kwargs']
     input_dequant_symbolic_kwargs = self.symbolic_kwargs['input_dequant_symbolic_kwargs']
     input_redequant_symbolic_kwargs = self.symbolic_kwargs['input_redequant_symbolic_kwargs']
     if input_dequant_symbolic_kwargs is not None:
         inp = DequantizeLinearFn.apply(inp, *input_dequant_symbolic_kwargs.values())
     if input_quant_symbolic_kwargs is not None:
         inp = QuantizeLinearFn.apply(inp, *input_quant_symbolic_kwargs.values())
         inp = DequantizeLinearFn.apply(inp, *input_redequant_symbolic_kwargs.values())
     return inp
Beispiel #2
0
 def output_symbolic_execution(self, out: Tensor):
     input_dequant_symbolic_kwargs = self.symbolic_kwargs['input_dequant_symbolic_kwargs']
     output_quant_symbolic_kwargs = self.symbolic_kwargs['output_quant_symbolic_kwargs']
     output_dequant_symbolic_kwargs = self.symbolic_kwargs['output_dequant_symbolic_kwargs']
     if input_dequant_symbolic_kwargs:
         out = DequantizeLinearFn.apply(out, *input_dequant_symbolic_kwargs.values())
     out = QuantizeLinearFn.apply(out, *output_quant_symbolic_kwargs.values())
     if output_dequant_symbolic_kwargs is not None:
         out = DequantizeLinearFn.apply(out, *output_dequant_symbolic_kwargs.values())
     return out
Beispiel #3
0
 def output_symbolic_execution(self, out: Tensor):
     output_dequant_symbolic_kwargs = self.symbolic_kwargs['output_dequant_symbolic_kwargs']
     output_quant_symbolic_kwargs = self.symbolic_kwargs['output_quant_symbolic_kwargs']
     bias = self.symbolic_kwargs['bias']
     if output_dequant_symbolic_kwargs is not None:
         out = DequantizeLinearFn.apply(out, *output_dequant_symbolic_kwargs.values())
     if bias is not None:
         out = out.add(bias)
     if output_quant_symbolic_kwargs is not None:
         out = QuantizeLinearFn.apply(out, *output_quant_symbolic_kwargs.values())
     return out