tico 0.1.0.dev250723__py3-none-any.whl → 0.1.0.dev250724__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
tico/__init__.py CHANGED
@@ -20,8 +20,16 @@ from packaging.version import Version
20
20
  from tico.config import CompileConfigV1, get_default_config
21
21
  from tico.utils.convert import convert, convert_from_exported_program, convert_from_pt2
22
22
 
23
+ __all__ = [
24
+ "CompileConfigV1",
25
+ "get_default_config",
26
+ "convert",
27
+ "convert_from_exported_program",
28
+ "convert_from_pt2",
29
+ ]
30
+
23
31
  # THIS LINE IS AUTOMATICALLY GENERATED BY setup.py
24
- __version__ = "0.1.0.dev250723"
32
+ __version__ = "0.1.0.dev250724"
25
33
 
26
34
  MINIMUM_SUPPORTED_VERSION = "2.5.0"
27
35
  SECURE_TORCH_VERSION = "2.6.0"
tico/config/base.py CHANGED
@@ -31,7 +31,7 @@ class CompileConfigBase:
31
31
  config = cls()
32
32
  for key in config_dict:
33
33
  if key in config.to_dict():
34
- assert type(config.get(key)) == bool
34
+ assert isinstance(config.get(key), bool)
35
35
  config.set(key, config_dict[key])
36
36
 
37
37
  return config
@@ -1 +1,6 @@
1
1
  from tico.experimental.quantization.public_interface import convert, prepare
2
+
3
+ __all__ = [
4
+ "convert",
5
+ "prepare",
6
+ ]
@@ -53,7 +53,7 @@ class ValRange:
53
53
  if isinstance(val, torch.Tensor):
54
54
  self.max = torch.max(val).item()
55
55
  self.min = torch.min(val).item()
56
- elif type(val) == list:
56
+ elif isinstance(val, list):
57
57
  self.max = max(val)
58
58
  self.min = min(val)
59
59
  else:
@@ -124,7 +124,7 @@ class CastMixedTypeArgs(PassBase):
124
124
  if rhs_val.dtype == type_to_promote:
125
125
  ori_type = lhs_val.dtype
126
126
  arg_to_promote = lhs
127
- assert arg_to_promote != None
127
+ assert arg_to_promote is not None
128
128
 
129
129
  if isinstance(arg_to_promote, torch.fx.Node):
130
130
  with graph.inserting_after(arg_to_promote):
@@ -20,7 +20,6 @@ import torch
20
20
  from torch.export import ExportedProgram
21
21
 
22
22
  from tico.serialize.circle_mapping import extract_shape
23
- from tico.utils import logging
24
23
  from tico.utils.graph import add_placeholder, create_node
25
24
  from tico.utils.passes import PassBase, PassResult
26
25
  from tico.utils.trace_decorators import trace_graph_diff_on_pass
@@ -59,8 +58,6 @@ class DecomposeAddmm(PassBase):
59
58
  super().__init__()
60
59
 
61
60
  def call(self, exported_program: ExportedProgram) -> PassResult:
62
- logger = logging.getLogger(__name__)
63
-
64
61
  gm = exported_program.graph_module
65
62
  graph: torch.fx.Graph = gm.graph
66
63
  modified = False
@@ -21,7 +21,6 @@ import torch
21
21
  # To import torch.ops.quantized_decomposed related operator
22
22
  from torch.export import ExportedProgram
23
23
 
24
- from tico.utils import logging
25
24
  from tico.utils.graph import create_node
26
25
  from tico.utils.passes import PassBase, PassResult
27
26
  from tico.utils.trace_decorators import trace_graph_diff_on_pass
@@ -65,7 +64,6 @@ class DecomposeFakeQuantize(PassBase):
65
64
  super().__init__()
66
65
 
67
66
  def call(self, exported_program: ExportedProgram) -> PassResult:
68
- logger = logging.getLogger(__name__)
69
67
  modified = False
70
68
 
71
69
  gm = exported_program.graph_module
@@ -22,7 +22,6 @@ import torch
22
22
  from torch.export import ExportedProgram
23
23
 
24
24
  from tico.serialize.circle_mapping import extract_shape
25
- from tico.utils import logging
26
25
  from tico.utils.graph import create_node
27
26
  from tico.utils.passes import PassBase, PassResult
28
27
  from tico.utils.trace_decorators import trace_graph_diff_on_pass
@@ -126,8 +125,6 @@ class DecomposeGroupNorm(PassBase):
126
125
  )
127
126
 
128
127
  def call(self, exported_program: ExportedProgram) -> PassResult:
129
- logger = logging.getLogger(__name__)
130
-
131
128
  gm = exported_program.graph_module
132
129
  graph: torch.fx.Graph = gm.graph
133
130
  modified = False
@@ -206,7 +206,6 @@ class LegalizePreDefinedLayoutOperators(PassBase):
206
206
 
207
207
  args = ConvTranspose2DArgs(*node.args, **node.kwargs) # type: ignore[arg-type]
208
208
  input = args.input
209
- padding = args.padding
210
209
  groups = args.groups
211
210
  dilation = args.dilation
212
211
 
@@ -288,13 +287,12 @@ class LegalizePreDefinedLayoutOperators(PassBase):
288
287
  input = args.input
289
288
  weight = args.weight
290
289
  bias = args.bias
291
- eps = args.eps
292
290
 
293
291
  running_mean = args.running_mean
294
292
  running_var = args.running_var
295
293
  use_input_stats = args.use_input_stats
296
294
 
297
- if not (use_input_stats == True):
295
+ if not use_input_stats:
298
296
  raise NotYetSupportedError("Only support use_input_stats is True.")
299
297
  if not isinstance(running_mean, NoneType):
300
298
  raise NotYetSupportedError("Only support running_mean=None")
@@ -350,10 +348,6 @@ class LegalizePreDefinedLayoutOperators(PassBase):
350
348
  # max_pool2d_with_indices(Tensor self, int[2] kernel_size, int[2] stride=[], int[2] padding=0, int[2] dilation=1, bool ceil_mode=False) -> (Tensor, Tensor)
351
349
  args = MaxPool2dWithIndicesArgs(*node.args, **node.kwargs) # type: ignore[arg-type]
352
350
  input_ = args.input
353
- kernel_size = args.kernel_size
354
- stride = args.stride
355
- padding = args.padding
356
- dilation = args.dilation
357
351
  ceil_mode = args.ceil_mode
358
352
  if ceil_mode:
359
353
  raise NotYetSupportedError("Only support non-ceil model.")
@@ -402,9 +396,6 @@ class LegalizePreDefinedLayoutOperators(PassBase):
402
396
  # avg_pool2d(Tensor self, int[2] kernel_size, int[2] stride=[], int[2] padding=0, bool ceil_mode=False, bool count_include_pad=True, int? divisor_override=None) -> (Tensor)
403
397
  args = AvgPool2dArgs(*node.args, **node.kwargs) # type: ignore[arg-type]
404
398
  input_ = args.input
405
- kernel_size = args.kernel_size
406
- stride = args.stride
407
- padding = args.padding
408
399
  ceil_mode = args.ceil_mode
409
400
  if ceil_mode:
410
401
  raise NotYetSupportedError("Only support non-ceil model.")
@@ -67,7 +67,7 @@ class LowerToResizeNearestNeighbor(PassBase):
67
67
  return None
68
68
  # indices = [None, None, H index, W index]
69
69
  N, C, H, W = indices
70
- if N != None or C != None:
70
+ if N is not None or C is not None:
71
71
  return None
72
72
  if not isinstance(H, torch.fx.Node):
73
73
  return None
@@ -90,7 +90,7 @@ class RemoveRedundantReshapePattern1(PassBase):
90
90
  if len(permute.users) != 1:
91
91
  continue
92
92
  permute_args = PermuteArgs(*permute.args, **permute.kwargs) # type: ignore[arg-type]
93
- permute_input, permute_dims = permute_args.input, permute_args.dims
93
+ permute_dims = permute_args.dims
94
94
  # (1xAxBxC) - `aten.permute` - (1xAxCxB)
95
95
  if permute_dims != [0, 1, 3, 2]:
96
96
  continue
@@ -172,7 +172,7 @@ class RemoveRedundantReshapePattern2(PassBase):
172
172
  if len(permute.users) != 1:
173
173
  continue
174
174
  permute_args = PermuteArgs(*permute.args, **permute.kwargs) # type: ignore[arg-type]
175
- permute_input, permute_dims = permute_args.input, permute_args.dims
175
+ permute_dims = permute_args.dims
176
176
  # (1xAxBxC) - `aten.permute` - (Bx1xAxC)
177
177
  if permute_dims != [2, 0, 1, 3]:
178
178
  continue
@@ -323,7 +323,7 @@ class CircleSubgraph(circle.SubGraph.SubGraphT):
323
323
  self, node: Union[torch.fx.Node, circle.Tensor.TensorT, ConstData]
324
324
  ) -> int:
325
325
  # return -1 if node is None. This is for generating CircleOutputExclude
326
- if node == None:
326
+ if node is None:
327
327
  return -1
328
328
 
329
329
  if hasattr(node, "name") and node.name in self.name_to_tid:
@@ -99,8 +99,6 @@ class AnyVisitor(NodeVisitor):
99
99
  keepdim = args.keepdim
100
100
 
101
101
  input_shape = list(extract_shape(input))
102
- output_shape = list(extract_shape(node))
103
-
104
102
  dim_i32 = None
105
103
  if dim is None:
106
104
  dims = tuple(i for i in range(0, len(input_shape)))
@@ -73,12 +73,6 @@ class InstanceNormVisitor(NodeVisitor):
73
73
  eps = args.eps
74
74
 
75
75
  # Ignore training-related args
76
- running_mean = args.running_mean
77
- running_var = args.running_var
78
- use_input_stats = args.use_input_stats
79
- momentum = args.momentum
80
- cudnn_enabled = args.cudnn_enabled
81
-
82
76
  input_shape = list(extract_shape(input))
83
77
  assert len(input_shape) == 4, len(input_shape)
84
78
 
@@ -66,10 +66,7 @@ class MulTensorVisitor(BaseMulVisitor):
66
66
  self,
67
67
  node: torch.fx.Node,
68
68
  ) -> circle.Operator.OperatorT:
69
- args = MulTensorArgs(*node.args, **node.kwargs) # type: ignore[arg-type]
70
- input = args.input
71
- other = args.other
72
-
69
+ _ = MulTensorArgs(*node.args, **node.kwargs) # type: ignore[arg-type]
73
70
  operator = super().define_node(
74
71
  node,
75
72
  )
@@ -88,10 +85,7 @@ class MulScalarVisitor(BaseMulVisitor):
88
85
  self,
89
86
  node: torch.fx.Node,
90
87
  ) -> circle.Operator.OperatorT:
91
- args = MulScalarArgs(*node.args, **node.kwargs) # type: ignore[arg-type]
92
- input = args.input
93
- other = args.other
94
-
88
+ _ = MulScalarArgs(*node.args, **node.kwargs) # type: ignore[arg-type]
95
89
  operator = super().define_node(
96
90
  node,
97
91
  )
@@ -76,9 +76,7 @@ class TransposeConvVisitor(NodeVisitor):
76
76
  bias = args.bias
77
77
  stride = args.stride
78
78
  padding = args.padding
79
- output_padding = args.output_padding
80
79
  groups = args.groups
81
- dilation = args.dilation
82
80
 
83
81
  assert groups == 1, "Only support group 1"
84
82
 
@@ -12,6 +12,11 @@
12
12
  # See the License for the specific language governing permissions and
13
13
  # limitations under the License.
14
14
 
15
+ from dataclasses import dataclass
16
+ from typing import List, Optional
17
+
18
+ import torch
19
+
15
20
  """
16
21
  This is a key for torch.fx.Node's meta dict to save QuantParam
17
22
 
@@ -19,11 +24,6 @@ QuantParam can be retrieved as node.meta[QPARAM_KEY]
19
24
  """
20
25
  QPARAM_KEY = "_quantization_parameters_"
21
26
 
22
- from dataclasses import dataclass
23
- from typing import List, Optional
24
-
25
- import torch
26
-
27
27
 
28
28
  @dataclass
29
29
  class QuantParam:
tico/utils/utils.py CHANGED
@@ -130,7 +130,7 @@ def enforce_type(callable):
130
130
 
131
131
  return True
132
132
 
133
- if typing.get_origin(type_hint) == dict:
133
+ if typing.get_origin(type_hint) is dict:
134
134
  if not isinstance(value, typing.get_origin(type_hint)):
135
135
  return False
136
136
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tico
3
- Version: 0.1.0.dev250723
3
+ Version: 0.1.0.dev250724
4
4
  Summary: Convert exported Torch module to circle
5
5
  Home-page: UNKNOWN
6
6
  License: UNKNOWN
@@ -1,11 +1,11 @@
1
- tico/__init__.py,sha256=e1nx3N3UdH9Ok1YI1Q0qGVr_5_AqoG4ei8NnoEsxeuk,1743
1
+ tico/__init__.py,sha256=yM9vGhAtMUsoFy-o3sf3ZOhadAaZ_-cXKO_AXBJvC9E,1883
2
2
  tico/pt2_to_circle.py,sha256=gu3MD4Iqc0zMZcCZ2IT8oGbyj21CTSbT3Rgd9s2B_9A,2767
3
3
  tico/config/__init__.py,sha256=xZzCXjZ84qE-CsBi-dfaL05bqpQ3stKKfTXhnrJRyVs,142
4
- tico/config/base.py,sha256=anwOiJFkUxUi7Cef573JgQcjk6S-FSi6O_TLjYASW-g,1244
4
+ tico/config/base.py,sha256=q5xMqGxTUZs4mFqt5c7i_y9U00fYgdMGl9nUqIVMlCo,1248
5
5
  tico/config/factory.py,sha256=il0zqB6Lm5NX2LnG-TUhmiP9vVeZ_3TucJMorVZIodY,1324
6
6
  tico/config/v1.py,sha256=O1jzpUBDwoWpLohEpI08pJNwVB-yz3ufPrQm2_XWq4Y,1108
7
7
  tico/experimental/__init__.py,sha256=IO6FP_xYbGy0dW0HL26GXD3ouxARaxCK7bz9dn4blPQ,26
8
- tico/experimental/quantization/__init__.py,sha256=aBkUiNH6v6WOPXdFa1TUx8WbF3dVfPGqJNdUFYbkfSo,77
8
+ tico/experimental/quantization/__init__.py,sha256=IaJPZegVJp0P3luutBo907Kp5sOJensE1Mm-XBG_jBs,122
9
9
  tico/experimental/quantization/config.py,sha256=h01WpP8Y-dLj6yg12pMZm3PXJqUnU2sWip5jBRc5x9Q,1604
10
10
  tico/experimental/quantization/public_interface.py,sha256=OKW8UoBMjPwiTacrWgQY9ENCh8ucPnYMSrl2R-w0pJ0,3982
11
11
  tico/experimental/quantization/quantizer.py,sha256=_2pDtWFKDCuKfYF2bptOwIYsa0VFNFM1ZNgi8_OGvHM,2365
@@ -55,24 +55,24 @@ tico/experimental/quantization/passes/insert_quantize_on_dtype_mismatch.py,sha25
55
55
  tico/experimental/quantization/passes/propagate_qparam_backward.py,sha256=TGtyW0Z2qOTgVIasBdGRgbwH31YYd6ek7OvLTmCV614,3118
56
56
  tico/experimental/quantization/passes/propagate_qparam_forward.py,sha256=RhUHGCR2RpBO5KYkQ7Z8U5u7HEwDq2wdKHLKAJCi-5c,5138
57
57
  tico/experimental/quantization/passes/quantize_bias.py,sha256=T7YxJ70N0tSK0FF9VJZA5iP0sHdnnsX9GX4AT4JDFSk,4325
58
- tico/experimental/quantization/passes/remove_weight_dequant_op.py,sha256=Klc_9-94tl0_AuAToKOjsWED_YPk5RB67eum0ddPX7o,6588
58
+ tico/experimental/quantization/passes/remove_weight_dequant_op.py,sha256=gI1MtrHazWpdNfys7f1ngTTWplzluF7SA-uX0HMR5Mc,6592
59
59
  tico/interpreter/__init__.py,sha256=IO6FP_xYbGy0dW0HL26GXD3ouxARaxCK7bz9dn4blPQ,26
60
60
  tico/interpreter/infer.py,sha256=1ZFe3DVMR2mlwBosoedqoL0-CGN_01CKLgMgxuw62KA,4861
61
61
  tico/interpreter/interpreter.py,sha256=tGbluCbrehTCqBu8mtGDNzby_ieJ2ry8_RH_eC0CQxk,3828
62
62
  tico/passes/__init__.py,sha256=IO6FP_xYbGy0dW0HL26GXD3ouxARaxCK7bz9dn4blPQ,26
63
63
  tico/passes/cast_aten_where_arg_type.py,sha256=QOaet85z23ad3s9c8md5r11q9dEw4-lfJqlpM7aiBic,7228
64
64
  tico/passes/cast_clamp_mixed_type_args.py,sha256=m3_HpXLywWmWERfE5lM5PgvjBod7C4BWu_Q-TkRyO8k,5387
65
- tico/passes/cast_mixed_type_args.py,sha256=gsDJfqxVE2dqQnLjSEsPWWs9FGXT-tIyMzjLhxfktKA,7617
65
+ tico/passes/cast_mixed_type_args.py,sha256=oXC0nDRnx4DJvmkzSVFVGqa4d2ICZvSarkXPgi9vTig,7621
66
66
  tico/passes/const_prop_pass.py,sha256=hDxGgJNiRjsgOArdaoeAOcOOA-nKBvA1W1zcMZQA5yg,11531
67
67
  tico/passes/convert_conv1d_to_conv2d.py,sha256=ktS3h158y9rg1sQiW8BZZbflV_dk_UdjBPQnuiOKyzg,5303
68
68
  tico/passes/convert_layout_op_to_reshape.py,sha256=sCAFjkmVtiKjvDQSAgnjNBHl3_hWXJZElGDXQiTH-7s,2963
69
69
  tico/passes/convert_repeat_to_expand_copy.py,sha256=JbtFTmWyfJS2SSd_higP1IEhQeh7wHdN5dmTbbiFVCs,3237
70
70
  tico/passes/convert_to_relu6.py,sha256=1BJpUwUb6Zli_1y3eyJQo7dg9B1xvZ7sYjMbvEQsFJM,6442
71
- tico/passes/decompose_addmm.py,sha256=0IUZjRS8G-h7LPeYu27gxWyTKi3pKAF1uNU1y-mHLL0,4056
71
+ tico/passes/decompose_addmm.py,sha256=KjnpZjSuA0uvNmKaTN_EMwobcOi3CAB81buORzTDxro,3979
72
72
  tico/passes/decompose_batch_norm.py,sha256=06LAxhSmpTxFZJmUelwB3I_GipNWrLoM7PfM6ZkxOZY,6512
73
- tico/passes/decompose_fake_quantize.py,sha256=dvXZ5LyjrbpgvasmcBgjk2-xJyijefPRoNXBjFmAkRI,5294
73
+ tico/passes/decompose_fake_quantize.py,sha256=736srs8SM8K_mLR0WG10LVMMLRkYkBM9OF0k1GCkAW0,5218
74
74
  tico/passes/decompose_fake_quantize_tensor_qparams.py,sha256=k9MJhMVABFNF6lXgEum1fJyGpdQwVRKxWOYhkMR2M7c,13915
75
- tico/passes/decompose_group_norm.py,sha256=rtjv3PrcFTtZ68uCsmE2LibnWaQU-e8NdKkblL4LqxE,10197
75
+ tico/passes/decompose_group_norm.py,sha256=6BqvYtMTPzeIgp8cPA8OFMwEBvb7odcg04IUgwtp7NQ,10120
76
76
  tico/passes/decompose_grouped_conv2d.py,sha256=n2qv320akL1ju33ucZ6lU1cKEAaj0NI8YZ5CrUnkRLM,8512
77
77
  tico/passes/decompose_slice_scatter.py,sha256=xqMHKhW2595YoAeubKZ4jRhYW4TQ09EXPgLNgODqXG8,5653
78
78
  tico/passes/extract_dtype_kwargs.py,sha256=ObpsaFlrTPYQw2hJ7UsC5CocyAtBkT_bMtzkMUqAyKc,4333
@@ -80,9 +80,9 @@ tico/passes/fill_meta_val.py,sha256=Xbam6Aq90ZfWItZw1dgLIwH_q8RCiU5JodKNqkj-ink,
80
80
  tico/passes/fuse_leading_unsqueeze_reshape.py,sha256=88jwTP35yRyXOk9xdO6YW2OEfdKAws3KFRT16WQz0RI,4291
81
81
  tico/passes/fuse_redundant_reshape_to_mean.py,sha256=GhJS1ZKB6Ns4AhwcW3uUQ6q-0N-AzlD32B2EwusUJHg,3761
82
82
  tico/passes/legalize_causal_mask_value.py,sha256=0nfUKGd7XSe9Hg5TAi4dUi6Nn6-JRTWCwhULR5AEgqs,4079
83
- tico/passes/legalize_predefined_layout_operators.py,sha256=MdpI47_AI6PDqxWHGlJCsjbg_qxJhDzMhTl1fWn8I04,18936
83
+ tico/passes/legalize_predefined_layout_operators.py,sha256=3gILn38jzIMDXtMTWpjdROgwmavDC64w115W171encg,18641
84
84
  tico/passes/lower_pow2_to_mul.py,sha256=nfJXa9ZTZMiLg6ownSyvkM4KF2z9tZW34Q3CCWI_vmQ,2402
85
- tico/passes/lower_to_resize_nearest_neighbor.py,sha256=N6F56Of8Aiv-KIiYLHnh33WX72W60ZVQSBEYWHdYqNQ,9005
85
+ tico/passes/lower_to_resize_nearest_neighbor.py,sha256=gbrvTmWSXDPdJ1XJtWGI5mo-uEiauXEG3ELwbKYVPLI,9013
86
86
  tico/passes/lower_to_slice.py,sha256=OzlFzK3lBYyYwC3WThsWd94Ob4JINIJF8UaLAtnumzU,7262
87
87
  tico/passes/merge_consecutive_cat.py,sha256=ayZNLDA1DFM7Fxxi2Dmk1CujkgUuaVCH1rhQgLrvvOQ,2701
88
88
  tico/passes/ops.py,sha256=cSj3Sk2x2cOE9b8oU5pmSa_rHr-iX2lORzu3N_UHMSQ,2967
@@ -90,24 +90,24 @@ tico/passes/remove_nop.py,sha256=Hf91p_EJAOC6DyWNthash0_UWtEcNc_M7znamQfYQ5Y,268
90
90
  tico/passes/remove_redundant_assert_nodes.py,sha256=IONd3xBy6I8tH6_Y1eN3_eCHH7WTC8soBgjXzOju9cQ,1612
91
91
  tico/passes/remove_redundant_expand.py,sha256=auyqIoQT4HJhiJfuUe6BrEtUhvz221ohnIK5EuszWeg,2112
92
92
  tico/passes/remove_redundant_permute.py,sha256=98UsaZzFZdQzEEAR1pIzRisAf6hgfXLa88aayjalt3E,4292
93
- tico/passes/remove_redundant_reshape.py,sha256=OnhU7FKpudGEaF6ufsMvkzf9hn84FNmNKk37M7FN3Pc,16454
93
+ tico/passes/remove_redundant_reshape.py,sha256=aeep6LDvY58GEuOrWckkEXnJa6wkkbiJ9FrimT9F3-s,16384
94
94
  tico/passes/remove_redundant_slice.py,sha256=Iv7TbB39fktNb4eq0VdyZnwxL_VsKLJ90diMmaf3kZk,2087
95
95
  tico/passes/remove_redundant_to_copy.py,sha256=tKy4XKkO2l33fMxVPQ_iFkUeFvP15kbPvzPPhT_g0c8,3292
96
96
  tico/passes/restore_linear.py,sha256=xGJdNb-1CrkOKS9BnLbcblkZc6P2vVjKIi-7lRcs7Bk,4111
97
97
  tico/passes/segment_index_select.py,sha256=VVCKNLtYRkr9n5lGnlzEuQsQ0WVxEYXGchFrDnB1C40,5189
98
98
  tico/serialize/__init__.py,sha256=IO6FP_xYbGy0dW0HL26GXD3ouxARaxCK7bz9dn4blPQ,26
99
- tico/serialize/circle_graph.py,sha256=3t78g5eKzhHKvIBJqQ-CcwbqoV-2QwAdd_8wm4W1yXw,12317
99
+ tico/serialize/circle_graph.py,sha256=8H7N4shSWj8TmsS8VUZUOQbA3DSCjZY8u1k45opXpWc,12317
100
100
  tico/serialize/circle_mapping.py,sha256=C9C3ORACQOdvBdnt5KRzlT8zao_TvzQklIxH794OhP0,5719
101
101
  tico/serialize/circle_serializer.py,sha256=eb90eTgU6WAZEWPclZIkInJsqAP1KjRSF2QeY5F3c3E,10766
102
102
  tico/serialize/pack.py,sha256=5HZ9kX3x6C6CyT_FWS6FRmvx_P7Dx21orjUNQxJ2xlo,1297
103
- tico/serialize/quant_param.py,sha256=s97GJyDOZULnqFUWPakHais31G_qqPuO0awPHCkZDvI,1342
103
+ tico/serialize/quant_param.py,sha256=6nbGKdqwMI9Cx9BLXJ9A9JU4qb770S8vTM1vCZRX3Eo,1342
104
104
  tico/serialize/operators/__init__.py,sha256=LIvXsNnN4yUCS2CGNQ5XW8p8oXDTV_WHWuOEAw1t6WY,990
105
105
  tico/serialize/operators/hashable_opcode.py,sha256=sDVKNTgIQw4IBtMEjNH8tzssMPx1x8-U2oagomRjGF0,1368
106
106
  tico/serialize/operators/node_visitor.py,sha256=UYyCwXqSCeRyimThMShstHnt7vKM9tsuzQ_02uEwF9I,2356
107
107
  tico/serialize/operators/op_abs.py,sha256=Y-vy7rcqPT-qD3QS5R8zbApWWTPpjY6xuMMVnbIhYmQ,1827
108
108
  tico/serialize/operators/op_add.py,sha256=otm062DMHVAThWmOtSTZdPyP3P5-2cv5VL_UWBJeLms,2346
109
109
  tico/serialize/operators/op_alias_copy.py,sha256=Xu9OiILbGf8oddh8yTqovvLfgVs8XYV7Cg4n6CesWcg,2175
110
- tico/serialize/operators/op_any.py,sha256=vZ37qzSEAOVPjfakSkgPDym91S9kOMUpLisAqkP-3Po,5211
110
+ tico/serialize/operators/op_any.py,sha256=Umsr5H7iaX9GoIDRcyqmvXo0yfswZnQ5rhiAn1lGrOY,5161
111
111
  tico/serialize/operators/op_arange_start_step.py,sha256=0T5lWwh3TfsFStmVv0v5qG03KENRDBmMix08RXQ4D-U,2132
112
112
  tico/serialize/operators/op_argmax.py,sha256=ARyGHlmWVmzwCct93V5x1-VyKqhxMOvV8GuM8yQWXdo,2290
113
113
  tico/serialize/operators/op_avg_pool2d.py,sha256=vc7WCakGXtGFPV1ix5EJmboH23tQ-cSI36ePY3PHKI4,7544
@@ -135,7 +135,7 @@ tico/serialize/operators/op_gelu.py,sha256=bS8-0rg5_bT__OI3mBDywxGx4xTO2Iqea3h-u
135
135
  tico/serialize/operators/op_gt.py,sha256=JAVbtuAUNLYhtJycJJCEkYo9QAvmiK4lTMdw5yHUd10,1886
136
136
  tico/serialize/operators/op_index.py,sha256=iDW2YSeUS_kLiWEaQ_MjrYpxZAFBbm7_GU_2B4SRe6c,3033
137
137
  tico/serialize/operators/op_index_select.py,sha256=cw7IbvixooikGxzbpUmI9tHS4kjl4lXLtO9D-GO8qLQ,2277
138
- tico/serialize/operators/op_instance_norm.py,sha256=AhcVm71ChB16BlPNwqBh5tMHCqMShOXHPkE8Ag9jBfQ,3144
138
+ tico/serialize/operators/op_instance_norm.py,sha256=5QvLefa74BrAPsTNYsi4Y7IB8d1wer4gtWantKo2nlQ,2940
139
139
  tico/serialize/operators/op_leaky_relu.py,sha256=UJPoL7kAIp6nAjyDdda_afdOcMLHme7NE77b2y76exc,2160
140
140
  tico/serialize/operators/op_linear.py,sha256=bw_mn2CiJy8CbpPevOV0PMPh0ZMWKAybLZ9cnIKJSsk,2527
141
141
  tico/serialize/operators/op_log.py,sha256=1TKvH2lttdAHE0P84vcxmOvGBBRUs6D71Jrei7SdZHE,1827
@@ -149,7 +149,7 @@ tico/serialize/operators/op_maximum.py,sha256=JjBr6gWEnuakLuk1_feotTHfIIm3s5YqWm
149
149
  tico/serialize/operators/op_mean.py,sha256=rVQZOxCJkHFY4kQBAS1HVK0HkcqxgkSy6zvEDLX_WYQ,2267
150
150
  tico/serialize/operators/op_minimum.py,sha256=fASjQVcTPCin02umQwFPdq2ss-Ve7S5A33J3QmmQ_wQ,1873
151
151
  tico/serialize/operators/op_mm.py,sha256=Fgq_HUUKuXOQY_t8lah3SOUqTsGet-KbVttCK4-fjAk,6821
152
- tico/serialize/operators/op_mul.py,sha256=42Guc0MWBGBCZoj9-4LcLtTMtUPwsmDSVmvkR8tqLhM,3165
152
+ tico/serialize/operators/op_mul.py,sha256=si_VdYNyFbULb50SnXHOINh0dZQ2PhRB6Fzl54ZBj5Y,3049
153
153
  tico/serialize/operators/op_ne.py,sha256=xa2WJL2tYksxw7fIJic_D9ltLEseyCII8HpR32Oq8Do,1900
154
154
  tico/serialize/operators/op_neg.py,sha256=fkI3ExyD3QF-qtxBcXqQutPNDbNL8g7lZYE7CyD2wLk,2046
155
155
  tico/serialize/operators/op_permute.py,sha256=5DfX3pfZ5FDNmrSqx3-hRwPA7vm36z7BfG-nuyyBTsM,2282
@@ -177,7 +177,7 @@ tico/serialize/operators/op_sub.py,sha256=yZskQJF0ylXVk02Uid8djPNIWDJ-0uHJar4UYh
177
177
  tico/serialize/operators/op_sum.py,sha256=B5aSwQMhyoBe2JYdE5nVQ3QeVDSzL-yuZZujsG08OdQ,2294
178
178
  tico/serialize/operators/op_tanh.py,sha256=rs7FsbQeUQ7Ak8RoQV9ymNGXHXRObojfY_SiqJiyqdA,1846
179
179
  tico/serialize/operators/op_to_copy.py,sha256=a8T0uPMavMO_md1a-4_0dlvDHyZS_xew0qB6xjf69rI,3934
180
- tico/serialize/operators/op_transpose_conv.py,sha256=YDObXXaHNOD7yjO1ccaB_NCfc5-L76ClvT3pduL8E90,5631
180
+ tico/serialize/operators/op_transpose_conv.py,sha256=-qdtKOlOmuFXxOBsJd5Bj3A44L7726RdqpYMRtP2br0,5553
181
181
  tico/serialize/operators/op_unsqueeze.py,sha256=ZHhfVXSWEiwb2VDYX5uhxbGQyzZjKT7CrbBpVGxVHBU,2310
182
182
  tico/serialize/operators/op_view.py,sha256=5EMww-ve17Vm9XPuV03Tn7vJsjpU2J8U4d_FOrlm9_o,2546
183
183
  tico/serialize/operators/op_where.py,sha256=doE81GSwygrPBm3JIfN9w7kKXxeIYKxgk0eoY22QIcg,2845
@@ -199,15 +199,15 @@ tico/utils/register_custom_op.py,sha256=3-Yl6iYmx1qQA2igNHt4hYhQhQMkdPb7gF50LIY8
199
199
  tico/utils/serialize.py,sha256=cBtEUfi_SU_9_v0cq2CNikzn8GnzEz2RwRvUH2NkWu4,1378
200
200
  tico/utils/torch_compat.py,sha256=oc6PztVsXdHcQ3iaVR90wLLxrGaj6zFHWZ8K9rRS6q8,1795
201
201
  tico/utils/trace_decorators.py,sha256=ddLIiKQfSaQrxgF1kNpwjFTQnXENzeSfcr1kuAW4jGI,3221
202
- tico/utils/utils.py,sha256=Ln6FgrnWuwvKEL1ntzZXgH1tClcaOfQHt117dQ_mSb8,12976
202
+ tico/utils/utils.py,sha256=A5p3iAAxRGDsZJh4ybp-Qo3MX3vk5RrmSY-R3rXqVeI,12976
203
203
  tico/utils/validate_args_kwargs.py,sha256=CRj_SXMUUn6onsl8XLAt-zPZCFxR4C0XOCoaad_ZD4I,26689
204
204
  tico/utils/mx/__init__.py,sha256=IO6FP_xYbGy0dW0HL26GXD3ouxARaxCK7bz9dn4blPQ,26
205
205
  tico/utils/mx/elemwise_ops.py,sha256=V6glyAHsVR1joqpsgnNytatCD_ew92xNWZ19UFDoMTA,10281
206
206
  tico/utils/mx/formats.py,sha256=uzNWyu-1onUlwQfX5cZ6fZSUfHMRqorper7_T1k3jfk,3404
207
207
  tico/utils/mx/mx_ops.py,sha256=RcfUTYVi-wilGB2sC35OeARdwDqnixv7dG5iyZ-fQT8,8555
208
- tico-0.1.0.dev250723.dist-info/LICENSE,sha256=kp4JLII7bzRhPb0CPD5XTDZMh22BQ7h3k3B7t8TiSbw,12644
209
- tico-0.1.0.dev250723.dist-info/METADATA,sha256=MGuH7gedgNwadikvqXLQL_zTHDmzk20cwDohwgRkreg,8430
210
- tico-0.1.0.dev250723.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
211
- tico-0.1.0.dev250723.dist-info/entry_points.txt,sha256=kBKYSS_IYrSXmUYevmmepqIVPScq5vF8ulQRu3I_Zf0,59
212
- tico-0.1.0.dev250723.dist-info/top_level.txt,sha256=oqs7UPoNSKZEwqsX8B-KAWdQwfAa7i60pbxW_Jk7P3w,5
213
- tico-0.1.0.dev250723.dist-info/RECORD,,
208
+ tico-0.1.0.dev250724.dist-info/LICENSE,sha256=kp4JLII7bzRhPb0CPD5XTDZMh22BQ7h3k3B7t8TiSbw,12644
209
+ tico-0.1.0.dev250724.dist-info/METADATA,sha256=AEx_8OeWODxLHfRAavGNh8dHJUAdUxOshMwBvjdd5tQ,8430
210
+ tico-0.1.0.dev250724.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
211
+ tico-0.1.0.dev250724.dist-info/entry_points.txt,sha256=kBKYSS_IYrSXmUYevmmepqIVPScq5vF8ulQRu3I_Zf0,59
212
+ tico-0.1.0.dev250724.dist-info/top_level.txt,sha256=oqs7UPoNSKZEwqsX8B-KAWdQwfAa7i60pbxW_Jk7P3w,5
213
+ tico-0.1.0.dev250724.dist-info/RECORD,,