当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.profiler.experimental.client.trace用法及代码示例


将 gRPC 请求发送到一个或多个分析器服务器以执行 on-demand 分析。

用法

tf.profiler.experimental.client.trace(
    service_addr, logdir, duration_ms, worker_list='',
    num_tracing_attempts=3, options=None
)

参数

  • service_addr 要分析的工作人员的 gRPC 地址的逗号分隔字符串。例如service_addr='grpc://localhost:6009' service_addr='grpc://10.0.0.2:8466,grpc://10.0.0.3:8466' service_addr='grpc://localhost:12345,grpc://localhost :23456'
  • logdir 将配置文件数据保存到的路径,通常是 TensorBoard 日志目录。客户端和服务器都必须可以访问此路径。例如logdir='gs://your_tb_dir'
  • duration_ms 跟踪或监控的持续时间(以毫秒为单位)。必须大于零。
  • worker_list 可选的仅 TPU 配置。要在当前会话中分析的工作人员列表。
  • num_tracing_attempts 可选的。没有收集到跟踪事件时自动重试 N 次(默认 3)。
  • options profiler.experimental.ProfilerOptions namedtuple 用于各种分析器选项。

抛出

  • InvalidArgumentError 当参数未通过验证检查时。
  • UnavailableError 如果没有收集到跟踪事件。

此方法将阻塞调用线程,直到它收到来自所有服务器的响应或直到截止日期到期。 CPU、GPU 和 TPU 支持单主机和多主机分析。分析结果将由每个服务器保存到指定的 TensorBoard 日志目录(即您保存模型检查点的目录)。使用 TensorBoard 配置文件插件查看可视化和分析结果。

使用示例(CPU/GPU):

# Start a profiler server before your model runs.
  tf.profiler.experimental.server.start(6009)
  # (Model code goes here).
  # Send gRPC request to the profiler server to collect a trace of your model.
  tf.profiler.experimental.client.trace('grpc://localhost:6009',
                                        '/nfs/tb_log', 2000)

示例用法(多个 GPU):

# E.g. your worker IP addresses are 10.0.0.2, 10.0.0.3, 10.0.0.4, and you
  # would like to schedule start of profiling 1 second from now, for a
  # duration of 2 seconds.
  options['delay_ms'] = 1000
  tf.profiler.experimental.client.trace(
      'grpc://10.0.0.2:8466,grpc://10.0.0.3:8466,grpc://10.0.0.4:8466',
      'gs://your_tb_dir',
      2000,
      options=options)

示例用法(TPU):

# Send gRPC request to a TPU worker to collect a trace of your model. A
  # profiler service has been started in the TPU worker at port 8466.
  # E.g. your TPU IP address is 10.0.0.2 and you want to profile for 2 seconds
  # .
  tf.profiler.experimental.client.trace('grpc://10.0.0.2:8466',
                                        'gs://your_tb_dir', 2000)

示例用法(多个 TPU):

# Send gRPC request to a TPU pod to collect a trace of your model on
  # multiple TPUs. A profiler service has been started in all the TPU workers
  # at the port 8466.
  # E.g. your TPU IP addresses are 10.0.0.2, 10.0.0.3, 10.0.0.4, and you want
  # to profile for 2 seconds.
  tf.profiler.experimental.client.trace(
      'grpc://10.0.0.2:8466',
      'gs://your_tb_dir',
      2000,
      '10.0.0.2:8466,10.0.0.3:8466,10.0.0.4:8466')

启动 TensorBoard 并将其指向您提供给此 API 的同一 logdir。

# logdir can be gs://your_tb_dir as in the above examples.
  $ tensorboard --logdir=/tmp/tb_log

打开浏览器并转到 localhost:6006/#profile 以查看分析结果。

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.profiler.experimental.client.trace。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。