Spec-Zone.ru › TensorFlow 2.3

tf.compat.v1.profiler.ProfileOptionBuilder

Построитель опций для API профилирования.

tf.compat.v1.profiler.ProfileOptionBuilder(
    options=None
)

Для ознакомления с параметрами, см. https://github.com/tensorflow/tensorflow/tree/master/tensorflow/core/profiler/g3doc/options.md

# Users can use pre-built options:
opts = (
    tf.profiler.ProfileOptionBuilder.trainable_variables_parameter())

# Or, build your own options:
opts = (tf.compat.v1.profiler.ProfileOptionBuilder()
    .with_max_depth(10)
    .with_min_micros(1000)
    .select(['accelerator_micros'])
    .with_stdout_output()
    .build()

# Or customize the pre-built options:
opts = (tf.compat.v1.profiler.ProfileOptionBuilder(
    tf.profiler.ProfileOptionBuilder.time_and_memory())
    .with_displaying_options(show_name_regexes=['.*rnn.*'])
    .build())

# Finally, profiling with the options:
_ = tf.compat.v1.profiler.profile(tf.compat.v1.get_default_graph(),
                        run_meta=run_meta,
                        cmd='scope',
                        options=opts)
Аргументы
options Необязательный начальный словарь опций.

Методы

account_displayed_op_only

Просмотреть исходный код

account_displayed_op_only(
    is_true
)

Учитывать только статистику отображаемых узлов профилировщика.

Аргументы
is_true Если True, то учитывать только статистику узлов, которые в конечном итоге отображаются в результатах. В противном случае статистика узла учитывается его родителями, при условии соответствия типу, указанному в 'account_type_regexes', даже если узел скрыт в выводе, например, с помощью hide_name_regexes.
Возвращает
self

build

Просмотреть исходный код

build()

Создать опции профилирования.

Возвращает
Словарь опций профилирования.

float_operation

Просмотреть исходный код

@staticmethod
float_operation()

Опции, используемые для профилирования операций с плавающей точкой.

См. https://github.com/tensorflow/tensorflow/tree/master/tensorflow/core/profiler/g3doc/profile_model_architecture.md по замечаниям относительно расчета операций с плавающей точкой.

Возвращает
Словарь опций профилирования.

order_by

Просмотреть исходный код

order_by(
    attribute
)

Сортировать отображаемые узлы профилировщика по атрибуту.

Поддерживаемые атрибуты включают micros, bytes, occurrence, params и т. д. https://github.com/tensorflow/tensorflow/tree/master/tensorflow/core/profiler/g3doc/options.md

Аргументы
attribute Атрибут, которым обладает узел профилировщика.
Возвращает
self

select

Просмотреть исходный код

select(
    attributes
)

Выбрать атрибуты для отображения.

См. https://github.com/tensorflow/tensorflow/tree/master/tensorflow/core/profiler/g3doc/options.md для поддерживаемых атрибутов.

Аргументы
attributes Список атрибутов, которыми обладает узел профилировщика.
Возвращает
self

time_and_memory

Просмотреть исходный код

@staticmethod
time_and_memory(
    min_micros=1, min_bytes=1, min_accelerator_micros=0, min_cpu_micros=0,
    min_peak_bytes=0, min_residual_bytes=0, min_output_bytes=0
)

Показать время выполнения и потребление памяти операций.

Аргументы
min_micros Отображать узлы профилировщика с временем выполнения не менее указанного значения. Суммирует время ускорителя и ЦП.
min_bytes Отображать узлы профилировщика, требующие выделения не менее указанного количества байт.
min_accelerator_micros Отображать узлы профилировщика, затрачивающие не менее указанного времени на ускорителе (например, GPU).
min_cpu_micros Отображать узлы профилировщика, затрачивающие не менее указанного времени на ЦП.
min_peak_bytes Отображать узлы профилировщика, использующие не менее указанного количества байт в пике (высокая отметка). Для узлов профилировщика, состоящих из нескольких узлов графа, суммирует пиковые байты узлов графа.
min_residual_bytes Отображать узлы профилировщика, у которых количество байт, не освобожденных после завершения вычислений Compute(), не меньше указанного. Для узлов профилировщика, состоящих из нескольких узлов графа, суммирует оставшиеся байты узлов графа.
min_output_bytes Отображать узлы профилировщика, у которых объем вывода не меньше указанного. Вывод необязательно выделяется этим узлом профилировщика.
Возвращает
Словарь опций профилирования.

trainable_variables_parameter

Просмотреть исходный код

@staticmethod
trainable_variables_parameter()

Опции, используемые для профилирования параметров обучаемых переменных.

Обычно используется вместе с представлением 'scope'.

Возвращает
Словарь опций профилирования.

with_accounted_types

Просмотреть исходный код

with_accounted_types(
    account_type_regexes
)

Выборочное подсчёт статистики на основе типов узлов.

Здесь 'types' означает свойства узлов профилировщика. Профилировщик по умолчанию рассматривает имя устройства (например, /job:xx/.../device:GPU:0) и тип операции (например, MatMul) в качестве свойств узлов профилировщика. Пользователь также может назначить настраиваемые 'types' узлам профилировщика через прото OpLogProto.

Например, можно выбрать узлы профилировщика, размещенные на gpu:0, с помощью: account_type_regexes=['.*gpu:0.*']

Если ни одно из свойств узла не соответствует указанным выражениям регулярных выражений, узел не отображается и не учитывается.

Аргументы
account_type_regexes Список регулярных выражений, определяющих типы.
Возвращает
self.

with_empty_output

Просмотреть исходный код

with_empty_output()

Не генерировать побочные выходные данные.

with_file_output

Просмотреть исходный код

with_file_output(
    outfile
)

Вывести результат в файл.

with_max_depth

Просмотреть исходный код

with_max_depth(
    max_depth
)

Установить максимальную глубину отображения.

Глубина зависит от представления профилирования. Для представления 'scope' это глубина иерархии имен scope (дерево), для представления 'op' это количество типов операций (список) и т. д.

Аргументы
max_depth Максимальная глубина отображаемой структуры данных.
Возвращает
self

with_min_execution_time

Просмотреть исходный код

with_min_execution_time(
    min_micros=0, min_accelerator_micros=0, min_cpu_micros=0
)

Отображать узлы профилировщика, затрачивающие не менее 'min_micros' времени.

Аргументы
min_micros Отображать узлы профилировщика с временем выполнения не менее этого значения. Суммирует время ускорителя и ЦП.
min_accelerator_micros Отображать узлы профилировщика, затрачивающие не менее этого времени на ускорителе (например, GPU).
min_cpu_micros Отображать узлы профилировщика, затрачивающие не менее этого времени на ЦП.
Возвращает
self

with_min_float_operations

Просмотреть исходный код

with_min_float_operations(
    min_float_ops
)

Отображать узлы профилировщика, затрачивающие не менее 'min_float_ops' ресурсов.

См. https://github.com/tensorflow/tensorflow/tree/master/tensorflow/core/profiler/g3doc/profile_model_architecture.md о замечаниях по вычислению операций с плавающей точкой.

Аргументы
min_float_ops Отображать узлы профилировщика с операциями с плавающей точкой не менее чем с этим значением.
Возвращает
self

with_min_memory

Просмотреть исходный код

with_min_memory(
    min_bytes=0, min_peak_bytes=0, min_residual_bytes=0, min_output_bytes=0
)

Отображать узлы профилировщика, потребляющие не менее 'min_bytes'.

Аргументы
min_bytes Отображать узлы профилировщика, которые запрашивают выделение не менее указанного количества байт.
min_peak_bytes Отображать узлы профилировщика, использующие не менее указанного количества байт в пике (высокая отметка). Для узлов профилировщика, состоящих из нескольких узлов графа, суммируются пиковые значения байт узлов графа.
min_residual_bytes Отображать узлы профилировщика, у которых не менее указанного количества байт не освобождается после завершения Compute(). Для узлов профилировщика, состоящих из нескольких узлов графа, суммируются остаточные значения байт узлов графа.
min_output_bytes Отображать узлы профилировщика, у которых не менее указанного количества байт вывода. Вывод не обязательно выделяется этим узлом профилировщика.
Возвращает
self

with_min_occurrence

Просмотреть исходный код

with_min_occurrence(
    min_occurrence
)

Отображать узлы профилировщика, включающие не менее 'min_occurrence' узлов графа.

«Узел» означает узел вывода профилировщика, который может быть строкой Python (вид кода), типом операции (вид операции) или узлом графа (вид графа/области). Строка Python включает все узлы графа, созданные этой строкой, а тип операции включает все узлы графа этого типа.

Аргументы
min_occurrence Отображать узлы, включающие не менее этого значения.
Возвращает
self

with_min_parameters

Просмотреть исходный код

with_min_parameters(
    min_params
)

Отображать узлы профилировщика, содержащие не менее 'min_params' параметров.

«Параметры» обычно относятся к весам переменных TensorFlow. Это отражает «емкость» моделей.

Аргументы
min_params Отображать узлы профилировщика, содержащие количество параметров не менее этого значения.
Возвращает
self

with_node_names

Просмотреть исходный код

with_node_names(
    start_name_regexes=None, show_name_regexes=None, hide_name_regexes=None,
    trim_name_regexes=None
)

Регулярные выражения, используемые для выбора узлов профилировщика для отображения.

После оценки 'with_accounted_types', 'with_node_names' оцениваются следующим образом:

Для структуры данных профиля профилировщик сначала находит узлы профилировщика, соответствующие 'start_name_regexes', и начинает отображать узлы профилировщика оттуда. Затем, если узел соответствует 'show_name_regexes' и не соответствует 'hide_name_regexes', он отображается. Если узел соответствует 'trim_name_regexes', профилировщик останавливает дальнейший поиск по этому ответвлению.

Аргументы
start_name_regexes Список регулярных выражений имен узлов для начала отображения.
show_name_regexes Список регулярных выражений имен узлов для отображения.
hide_name_regexes Список регулярных выражений имен узлов, которые следует скрыть.
trim_name_regexes Список регулярных выражений имен узлов, где следует остановить поиск.
Возвращает
self

with_pprof_output

Просмотреть исходный код

with_pprof_output(
    pprof_file
)

Генерирует файл профиля pprof в формате gzip.

Для использования файла pprof:

pprof -png --nodecount=100 --sample_index=1

Аргументы
pprof_file Имя файла для вывода, обычно с расширением .pb.gz.
Возвращает
self.

with_stdout_output

Просмотреть исходный код

with_stdout_output()

Выводит результат в stdout.

with_step

Просмотреть исходный код

with_step(
    step
)

Номер шага профилирования для использования.

Здесь «шаг» относится к шагу, определенному API Profiler.add_step().

Аргументы
step При наличии нескольких шагов профилирования, выбирает, какой шаг использовать. Если -1, используется среднее значение по всем доступным шагам.
Возвращает
self

with_timeline_output

Просмотреть исходный код

with_timeline_output(
    timeline_file
)

Генерирует файл timeline в формате JSON.

© 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/compat/v1/profiler/ProfileOptionBuilder

Spec-Zone.ru

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