Spec-Zone.ru › TensorFlow

tf.profiler.experimental.client.trace

Отправляет запросы gRPC одному или нескольким серверам профилирования для выполнения профилирования по запросу.

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

Этот метод блокирует вызывающий поток до получения ответов от всех серверов или истечения срока ожидания. Поддерживается профилирование одного и нескольких узлов на CPU, GPU и TPU. Каждый сервер сохраняет результаты профилирования в указанную директорию журналов TensorBoard (то есть в директорию, где хранятся контрольные точки модели). Для просмотра визуализации и результатов анализа используйте плагин профилирования TensorBoard.

Аргументы
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 для различных параметров профилировщика.
Исключения
InvalidArgumentError Возникает, если аргументы не прошли проверку.
UnavailableError Если не удалось собрать ни одного события трассировки.

Пример использования (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 и укажите ту же директорию logdir, которую вы передали этому API.

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

Откройте браузер и перейдите по адресу localhost:6006/#profile, чтобы просмотреть результаты профилирования.

© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/profiler/experimental/client/trace

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API