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 и Cloud TPU. Этот метод поддерживает профилирование одного узла для CPU, GPU, TPU, а также нескольких TPU-рабочих узлов. Результаты профилирования будут сохранены в указанном вами каталоге журналов TensorBoard (например, в каталоге, где вы сохраняете контрольные точки вашей модели). Используйте плагин профилирования TensorBoard для просмотра результатов визуализации и анализа.
| Аргументы | |
|---|---|
service_addr | Адрес gRPC службы профилирования, например, grpc://localhost:6009. |
logdir | Путь к каталогу журналов TensorBoard, например, /tmp/tb_log. |
duration_ms | Длительность трассировки или мониторинга в мс. |
worker_list | Необязательно. Список рабочих узлов, которые мы собираемся профилировать в текущем сеансе (только TPU). |
num_tracing_attempts | Необязательно. Автоматически повторяет попытку N раз, когда не собираются данные о трассировке (по умолчанию 3). |
options | Кортеж namedtuple profiler.experimental.ProfilerOptions для различных параметров профилировщика. |
| Исключения | |
|---|---|
UnavailableError | Если не собраны данные о трассировке. |
Пример использования (CPU/GPU):
Запустите сервер профилировщика перед запуском модели.
tf.profiler.experimental.server.start(6009)
# your model code.
# Send gRPC request to the profiler server to collect a trace of your model.
```python
tf.profiler.experimental.client.trace('grpc://localhost:6009',
'/tmp/tb_log', 2000)
Example usage (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.
```python
# 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)
Example usage (Multiple TPUs):
# 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.
```python
# 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.3,10.0.0.4')
Launch TensorBoard and point it to the same logdir you provided to this API.
$ tensorboard --logdir=/tmp/tb_log (or gs://your_tb_dir in the above examples)
Open your browser and go to localhost:6006/#profile to view profiling results.
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.3/api_docs/python/tf/profiler/experimental/client/trace