oneDNN optimizations are enabled by default on X86 CPUs
To explicitly enable or disable oneDNN optimizations, set the environment variable TF_ENABLE_ONEDNN_OPTS to 1 (enable) or 0 (disable) before running TensorFlow. To fall back to default settings, unset the environment variable.
oneDNN optimizations can yield slightly different numerical results compared to when oneDNN optimizations are disabled due to floating-point round-off errors from
different computation approaches and orders.
To verify if oneDNN optimizations are on, look for a message with "oneDNN custom operations are on" in the log. If the exact phrase is not there, it means they are off.
Making the tf.function type system fully available:
tf.types.experimental.TraceType now allows custom tf.function inputs to declare Tensor decomposition and type casting support.
Introducing tf.types.experimental.FunctionType as the comprehensive representation of the signature of tf.function callables. It can be accessed through the function_type property of tf.functions and ConcreteFunctions. See the tf.types.experimental.FunctionType documentation for more details.
Introducing tf.types.experimental.AtomicFunction as the fastest way to perform TF computations in Python.
Can be accessed through inference_fn property of ConcreteFunctions
Does not support gradients.
See tf.types.experimental.AtomicFunction documentation for how to call and use it.
tf.data:
Moved option warm_start from tf.data.experimental.OptimizationOptions to tf.data.Options.
tf.lite:
sub_op and mul_op support broadcasting up to 6 dimensions.
The tflite::SignatureRunner class, which provides support for named parameters and for multiple named computations within a single TF Lite model, is no longer considered experimental. Likewise for the following signature-related methods of tflite::Interpreter:
tflite::Interpreter::GetSignatureRunner
tflite::Interpreter::signature_keys
tflite::Interpreter::signature_inputs
tflite::Interpreter::signature_outputs
tflite::Interpreter::input_tensor_by_signature
tflite::Interpreter::output_tensor_by_signature
Similarly, the following signature runner functions in the TF Lite C API are no longer considered experimental:
Hot-fix was needed for an issue affecting the TensorFlow installation
process.
TensorFlow 2.15.0 Python package was requesting tensorrt-related
packages that cannot be found unless the user installs them beforehand
or provides additional installation flags.
This dependency affected anyone installing TensorFlow 2.15 alongside
NVIDIA CUDA dependencies via pip install tensorflow[and-cuda].
Depending on the installation method, TensorFlow 2.14 would be installed
instead of 2.15, or users could receive an installation error due to
those missing dependencies.
TensorFlow 2.15.0.post1 is being released for Linux x86_64 to resolve this
issue as quickly as possible.
This version removes the tensorrt Python package dependencies from the
tensorflow[and-cuda] installation method to ensure pip install tensorflow[and-cuda] works as originally intended for TensorFlow 2.15.
Support for TensorRT is otherwise unaffected as long as TensorRT is
already installed on the system.
Using .post1 instead of a full minor release allowed us to push this release
out quickly. However, please note the following caveat:
For users wishing to pin their Python dependency in a requirements file
or other situation, under Python's version specification rules,
tensorflow[and-cuda]==2.15.0 will not install this fixed version.
Please use ==2.15.0.post1 to specify this exact version on Linux
platforms, or a fuzzy version specification, such as ==2.15.*, to
specify the most recent compatible version of TensorFlow 2.15 on all
platforms.
Release 2.15.0
TensorFlow
Breaking Changes
tf.types.experimental.GenericFunction has been renamed to tf.types.experimental.PolymorphicFunction.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps tensorflow-cpu from 2.14.0 to 2.15.0.post1.
Release notes
Sourced from tensorflow-cpu's releases.
... (truncated)
Changelog
Sourced from tensorflow-cpu's changelog.
... (truncated)
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show