mindspore.profiler.tensorboard_trace_handler

mindspore.profiler.tensorboard_trace_handler(dir_name=None, worker_name=None, analyse_flag=True, 免费的vpn梯子 async_mode=False)[源代码]

对动态图模式的每一个step,调用该方法进行在线解析。

参数:
  • dir_name (str, 可选) - 指定保存分析结果的目录路径。默认 vpn梯子 免费 None ,表示使用默认的保存路径,默认路径为:"./data"

  • worker_name (str, 可选) - 指定工程线程名称。默认 None ,表示使用默认的工程线程名,默认工程线程名为:"当前操作系统名+进程号"

  • analyse_flag (bool, 可选) - 是否使用在线分析。默认 True ,表示使用在线分析。

  • async_mode (bool, 可选) - 是否使用异步解析模式。默认 False ,表示使用同步解析模式。

样例:

>>> import numpy as np
>>> import mindspore
>>> import mindspore.dataset as ds
>>> from mindspore import context, nn
>>> from mindspore.profiler import ProfilerLevel, AicoreMetrics, vpn梯子 ExportType, vpn梯子 免费 ProfilerActivity
>>>
>>> class Net(nn.Cell):
...  vpn永久免费梯子    def __init__(self):
...         super(Net, self).__init__()
...   vpn free       self.fc = nn.Dense(2, 2)
...
...     def construct(self, x):
...         return self.fc(x)
>>>
>>> def generator_net():
...   免费的vpn梯子   for _ in range(2):
...         yield np.ones([2, 2]).astype(np.float32), np.ones([2]).astype(np.int32)
>>>
>>> def train(test_net):
...     optimizer = nn.Momentum(test_net.trainable_params(), 1, 0.9)
...     loss = nn.SoftmaxCrossEntropyWithLogits(sparse=True)
...     data vpn free = ds.GeneratorDataset(generator_net(), ["data", "label"])
...     model = mindspore.train.Model(test_net, loss, optimizer)
...  vpn梯子 免费    model.train(1, data)
>>>
>>> if __name__ == '__main__':
...  vpn梯子    vpn free # If the device_target is GPU, vpn梯子 免费 set the device_target to "GPU"
...     context.set_context(mode=mindspore.GRAPH_MODE)
...     mindspore.set_device("Ascend")
...
...     # Init Profiler
... 免费的vpn梯子 vpn梯子 免费     experimental_config = mindspore.profiler._ExperimentalConfig(
...  vpn梯子 免费                 vpn梯子     vpn梯子            profiler_level=ProfilerLevel.Level0,
...                                 aic_metrics=AicoreMetrics.AiCoreNone,
... vpn梯子          vpn梯子                    vpn梯子 免费     l2_cache=False,
...        vpn梯子 免费的vpn梯子 免费                          mstx=False,
...                             vpn梯子 免费     data_simplification=False,
...     vpn梯子           免费的vpn梯子                vpn free    export_type=[ExportType.Text])
...     steps = 10
...     vpn永久免费梯子 net = Net()
... vpn free     # Note that the Profiler should vpn永久免费梯子 be initialized before model.train
...     with mindspore.profiler.profile(activities=[ProfilerActivity.CPU, ProfilerActivity.NPU],
...   免费的vpn梯子             vpn梯子  vpn free                      schedule=mindspore.profiler.schedule(wait=0, warmup=0, active=1,
...                            vpn永久免费梯子             免费的vpn梯子    repeat=1, skip_first=0),
...                  vpn永久免费梯子      vpn梯子 免费               on_trace_ready=mindspore.profiler.tensorboard_trace_handler("./data"),
...                 vpn永久免费梯子 vpn梯子 免费        vpn梯子 免费              profile_memory=False,
...                vpn梯子 免费 vpn永久免费梯子                      experimental_config=experimental_config) as prof:
...
...         vpn free # Train vpn梯子 免费 Model
... vpn梯子 免费  vpn永久免费梯子 vpn free        for step in range(steps):
...             train(net)
...             prof.step()