tf.xla.experimental.jit_scope
| Просмотреть исходный код на GitHub |
Включить или отключить JIT-компиляцию операторов в рамках области.
@contextlib.contextmanager
tf.xla.experimental.jit_scope(
compile_ops=True, separate_compiled_gradients=False
)
Примечание: Это экспериментальная функция.
Компиляция является подсказкой и поддерживается только в рамках возможностей.
Пример использования:
with tf.xla.experimental.jit_scope():
c = tf.matmul(a, b) # compiled
with tf.xla.experimental.jit_scope(compile_ops=False):
d = tf.matmul(a, c) # not compiled
with tf.xla.experimental.jit_scope(
compile_ops=lambda node_def: 'matmul' in node_def.op.lower()):
e = tf.matmul(a, b) + d # matmul is compiled, the addition is not.
Пример separate_compiled_gradients:
# In the example below, the computations for f, g and h will all be compiled
# in separate scopes.
with tf.xla.experimental.jit_scope(
separate_compiled_gradients=True):
f = tf.matmul(a, b)
g = tf.gradients([f], [a, b], name='mygrads1')
h = tf.gradients([f], [a, b], name='mygrads2')
| Аргументы | |
|---|---|
compile_ops | Включать или отключать компиляцию в области. Может быть булевым значением Python или вызываемой функцией, которая принимает параметр node_def и возвращает булевое значение Python. |
separate_compiled_gradients | Если true, каждый подграф градиента помещается в отдельную область компиляции. Это обеспечивает тонкую настройку того, какие части графа будут компилироваться как единица. Раздельная компиляция градиентов может улучшить производительность для некоторых графов. Область называется на основе области вычисления вперед, а также имени градиентов. В результате градиенты будут компилироваться в области, отличной от области вычисления вперед и от других градиентов. |
| Исключения | |
|---|---|
RuntimeError | если вызвана при включенном режиме выполнения eager. |
Возвращаемое значение:
Текущая область, включающая или отключающая компиляцию.
© 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/xla/experimental/jit_scope