MCPcopy Index your code
hub / github.com/apache/tvm / _convert

Method _convert

python/tvm/runtime/vm.py:192–222  ·  view source on GitHub ↗

helper function to convert arguments to vm function.

(self, arg: Any, cargs: list)

Source from the content-addressed store, hash-verified

190 self._save_function(func_name, saved_name, int(include_return), *cargs)
191
192 def _convert(self, arg: Any, cargs: list) -> None:
193 """helper function to convert arguments to vm function."""
194
195 def _gettype(arg):
196 if isinstance(arg, np.float16):
197 return "float16"
198 elif isinstance(arg, Integral | bool):
199 return "int32"
200 else:
201 return "float32"
202
203 if isinstance(arg, Object):
204 cargs.append(arg)
205 elif isinstance(arg, np.ndarray):
206 nd_arr = tvm.runtime.tensor(arg, device=tvm.cpu(0))
207 cargs.append(nd_arr)
208 elif isinstance(arg, tvm.runtime.Tensor):
209 cargs.append(arg)
210 elif isinstance(arg, tuple | list):
211 field_args: list[Any] = []
212 for field in arg:
213 self._convert(field, field_args)
214 cargs.append(tuple(field_args))
215 elif isinstance(arg, Number | bool):
216 dtype = _gettype(arg)
217 value = tvm.runtime.tensor(np.array(arg, dtype=dtype), device=tvm.cpu(0))
218 cargs.append(value)
219 elif isinstance(arg, str):
220 cargs.append(arg)
221 else:
222 raise TypeError(f"Unsupported type: {type(arg)}")
223
224 def _convert_func_named_args(self, func_name: str, args: Any, **kwargs: Any) -> Any:
225 """

Callers 2

save_functionMethod · 0.95
set_inputMethod · 0.95

Calls 3

tupleFunction · 0.85
appendMethod · 0.45
cpuMethod · 0.45

Tested by

no test coverage detected