tvm._ffi
#
tvm._ffi
是 TVM 中与 C 代码交互的命名空间。它包含了所有与 C 代码交互的内容。TVM 中的大多数 C 相关对象都是 ctypes
兼容的,这意味着它们包含名为 handle
的字段,该字段是 ctypes.c_void_p
,并且可以通过 ctypes 的函数调用来使用 。
一些性能关键函数由 Cython 实现,并具有 ctypes 回退实现。
import set_env
import tvm._ffi
tvm._ffi.registry.list_global_func_names?
Signature: tvm._ffi.registry.list_global_func_names()
Docstring:
Get list of global functions registered.
Returns
-------
names : list
List of global functions names.
File: /media/pc/data/lxw/ai/tvm/python/tvm/_ffi/registry.py
Type: function
tvm._ffi.registry.remove_global_func?
Signature: tvm._ffi.registry.remove_global_func(name)
Docstring:
Remove a global function by name
Parameters
----------
name : str
The name of the global function
File: /media/pc/data/lxw/ai/tvm/python/tvm/_ffi/registry.py
Type: function
@tvm._ffi.register_func("tvm.ext.chaos")
def demo():
print("RT")
print("tvm.ext.chaos" in tvm._ffi.registry.list_global_func_names())
tvm._ffi.registry.remove_global_func("tvm.ext.chaos") # 移除全局函数
"tvm.ext.chaos" in tvm._ffi.registry.list_global_func_names()
True
False