megengine.jit.trace

class trace(function, symbolic=False, capture_as_const=False, record_only=False, sublinear_memory_config=None, dtr_config=None, profiling=False, opt_level=2, graph_opt_config=None, symbolic_shape=True)[源代码]

包装一个可调用对象,并提供以下功能:

  • 通过 tracedump 实现追溯(tracing)

  • 通过调用 __call__ 加速执行

参数
  • function – 将被追溯的函数。

  • symbolic – 是否为追溯使用符号执行。默认:False

  • capture_as_const – 将全局变量或闭包捕获为常值。默认:False

  • record_only – if True, won’t run even if call the function. Default: False

  • sublinear_memory_config (Optional[SublinearMemoryConfig]) – 配置亚线性内存优化。如果不是None,则使用给定设置进行亚线性内存优化。

  • profiling (bool) – 是否对编译好的函数追溯(trace)进行性能评估(profile)。默认:False

  • opt_level (int) – optimization level for compiling trace. Default: 2

  • graph_opt_config (Optional[GraphOptimizationConfig]) – configuration for graph optimization. Default: None

  • symbolic_shape (bool) – 是否为追溯使用符号形状。默认:True

方法

dump(file, *[, arg_names, output_names, ...])

序列化被追溯 (trace) 的模型并保存到文件。

get_profile()

获取被追溯(trace)函数在编译后运行的性能结果。