Skip to content

Commit

Permalink
Resolved merge conflicts
Browse files Browse the repository at this point in the history
  • Loading branch information
mahmoud-abuzaina committed Oct 5, 2023
2 parents cd0b9b5 + c36e989 commit c942976
Show file tree
Hide file tree
Showing 1,769 changed files with 51,252 additions and 188,415 deletions.
167 changes: 129 additions & 38 deletions .bazelrc

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions .github/workflows/arm-cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@ on:
schedule:
- cron: '0 8 * * *'

permissions:
contents: read

jobs:
build:
if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/arm-ci-extended-cpp.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@ on:
schedule:
- cron: '0 2 * * *'

permissions:
contents: read

jobs:
build:
if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/arm-ci-extended.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@ on:
schedule:
- cron: '0 4 * * *'

permissions:
contents: read

jobs:
build:
if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/arm-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,9 @@ on:
- master
- r2.**

permissions:
contents: read

jobs:
build:
# Don't do this in forks, and if labeled, only for 'kokoro:force-run'
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/cffconvert.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,9 @@ on:
paths:
- CITATION.cff

permissions:
contents: read

jobs:
validate:
if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
Expand Down
6 changes: 6 additions & 0 deletions .github/workflows/issue-on-pr-rollback.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,16 @@ on:
push:
branches:
- master

permissions: {}

jobs:
create-issue-on-pr-rollback:
runs-on: ubuntu-latest
permissions:
contents: read
issues: write
pull-requests: read
if: |
github.repository == 'tensorflow/tensorflow' &&
startsWith(github.event.head_commit.message, 'Rollback of PR #')
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/pylint-presubmit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ on:
paths:
- '**.py'

permissions:
contents: read

jobs:
build:
name: PyLint
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/release-branch-cherrypick.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,9 @@ on:
required: true
type: string

permissions:
contents: read

jobs:
cherrypick:
name: Cherrypick to ${{ github.event.inputs.release_branch}} - ${{ github.event.inputs.git_commit }}
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/sigbuild-docker-branch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,9 @@ on:
branches:
- "r[1-9].[0-9]+"

permissions:
contents: read

jobs:
docker:
if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
Expand Down
6 changes: 6 additions & 0 deletions .github/workflows/sigbuild-docker-presubmit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,19 @@ on:
- 'tensorflow/tools/tf_sig_build_dockerfiles/**'
- '!tensorflow/tools/tf_sig_build_dockerfiles/README.md'

permissions:
contents: read

jobs:
docker:
if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [python3.9, python3.10, python3.11]
permissions:
contents: read
pull-requests: write
steps:
- name: Delete unnecessary tools folder
run: |
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/sigbuild-docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,9 @@ on:
branches:
- master

permissions:
contents: read

jobs:
docker:
if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/stale-issues.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,9 @@ on:
schedule:
- cron: "30 1 * * *"

permissions:
contents: read

jobs:
close-issues:
# Don't do this in forks
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/trusted-partners.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,9 @@ name: Trusted Partner PR
on:
pull_request_target:

permissions:
contents: read

jobs:
assign-partner-tags:
runs-on: ubuntu-latest
Expand Down
5 changes: 5 additions & 0 deletions .github/workflows/update-nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,15 @@ on:
schedule:
- cron: 0 4 * * * # 4am UTC is 9pm PDT and 8pm PST
name: Set nightly branch to master HEAD

permissions: {}

jobs:
master-to-nightly:
if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: zofrex/mirror-branch@a8809f0b42f9dfe9b2c5c2162a46327c23d15266 # v1.0.3
name: Set nightly branch to master HEAD
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/update-rbe.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,9 @@ name: Update RBE Configs
on:
workflow_dispatch:

permissions:
contents: read

jobs:
rbe:
name: Update RBE Configs
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
[![PyPI](https://badge.fury.io/py/tensorflow.svg)](https://badge.fury.io/py/tensorflow)
[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.4724125.svg)](https://doi.org/10.5281/zenodo.4724125)
[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/1486/badge)](https://bestpractices.coreinfrastructure.org/projects/1486)
[![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/tensorflow/tensorflow/badge)](https://api.securityscorecards.dev/projects/github.com/tensorflow/tensorflow)
[![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/tensorflow/tensorflow/badge)](https://securityscorecards.dev/viewer/?uri=github.com/tensorflow/tensorflow)
[![Fuzzing Status](https://oss-fuzz-build-logs.storage.googleapis.com/badges/tensorflow.svg)](https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=1&q=proj:tensorflow)
[![Fuzzing Status](https://oss-fuzz-build-logs.storage.googleapis.com/badges/tensorflow-py.svg)](https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=1&q=proj:tensorflow-py)
[![OSSRank](https://shields.io/endpoint?url=https://ossrank.com/shield/44)](https://ossrank.com/p/44)
Expand Down
141 changes: 45 additions & 96 deletions RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@

* `tf.lite`:

* `mul_op` supports broadcasting up to 6 dimensions.
* `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
Expand Down Expand Up @@ -75,6 +75,9 @@
* `TfLiteSignatureRunnerInvoke`
* `TfLiteSignatureRunnerResizeInputTensor`

* New C API function `TfLiteExtensionApisVersion` added to
`tensorflow/lite/c/c_api.h`.

* Android NDK r25 is supported.

### Bug Fixes and Other Changes
Expand Down Expand Up @@ -155,80 +158,38 @@ This release contains contributions from many people at Google, as well as:

# Release 2.14.0

<INSERT SMALL BLURB ABOUT RELEASE FOCUS AREA AND POTENTIAL TOOLCHAIN CHANGES>
## Tensorflow

# Breaking Changes
### Breaking Changes

* <DOCUMENT BREAKING CHANGES HERE>
* <THIS SECTION SHOULD CONTAIN API, ABI AND BEHAVIORAL BREAKING CHANGES>
* Support for Python 3.8 has been removed starting with TF 2.14. The TensorFlow 2.13.1 patch release will still have Python 3.8 support.

* `tf.Tensor`
* The class hierarchy for `tf.Tensor` has changed, and there are now
explicit `EagerTensor` and `SymbolicTensor` classes for eager and
tf.function respectively. Users who relied on the exact type of Tensor
(e.g. `type(t) == tf.Tensor`) will need to update their code to use
`isinstance(t, tf.Tensor)`. The `tf.is_symbolic_tensor` helper added in
2.13 may be used when it is necessary to determine if a value is
specifically a symbolic tensor.
* The class hierarchy for `tf.Tensor` has changed, and there are now explicit `EagerTensor` and `SymbolicTensor` classes for eager and tf.function respectively. Users who relied on the exact type of Tensor (e.g. `type(t) == tf.Tensor`) will need to update their code to use `isinstance(t, tf.Tensor)`. The `tf.is_symbolic_tensor` helper added in 2.13 may be used when it is necessary to determine if a value is specifically a symbolic tensor.

* `tf.compat.v1.Session`
* `tf.compat.v1.Session.partial_run` and
`tf.compat.v1.Session.partial_run_setup` will be deprecated in the
next release.
* `tf.compat.v1.Session.partial_run` and `tf.compat.v1.Session.partial_run_setup` will be deprecated in the next release.

* `tf.estimator`
* `tf.estimator` API will be removed in the next release. TF Estimator
Python package will no longer be released.

# Known Caveats
### Known Caveats

* <CAVEATS REGARDING THE RELEASE (BUT NOT BREAKING CHANGES).>
* <ADDING/BUMPING DEPENDENCIES SHOULD GO HERE>
* <KNOWN LACK OF SUPPORT ON SOME PLATFORM, SHOULD GO HERE>
* `tf.lite`
* when converter flag "_experimenal_use_buffer_offset" is enabled,
additional metadata is automatically excluded from the generated model.
The behaviour is the same as "exclude_conversion_metadata" is set
* If the model is larger than 2GB, then we also require
"exclude_conversion_metadata" flag to be set
* when converter flag "_experimenal_use_buffer_offset" is enabled, additional metadata is automatically excluded from the generated model. The behaviour is the same as "exclude_conversion_metadata" is set
* If the model is larger than 2GB, then we also require "exclude_conversion_metadata" flag to be set

# Major Features and Improvements

* <INSERT MAJOR FEATURE HERE, USING MARKDOWN SYNTAX>
* <IF RELEASE CONTAINS MULTIPLE FEATURES FROM SAME AREA, GROUP THEM TOGETHER>
### Major Features and Improvements

* The `tensorflow` pip package has a new, optional installation method for
Linux that installs necessary Nvidia CUDA libraries through pip. As long as
the Nvidia driver is already installed on the system, you may now run `pip
install tensorflow[and-cuda]` to install TensorFlow's Nvidia CUDA library
dependencies in the Python environment. Aside from the Nvidia driver, no
other pre-existing Nvidia CUDA packages are necessary.
* The `tensorflow` pip package has a new, optional installation method for Linux that installs necessary Nvidia CUDA libraries through pip. As long as the Nvidia driver is already installed on the system, you may now run `pip install tensorflow[and-cuda]` to install TensorFlow's Nvidia CUDA library dependencies in the Python environment. Aside from the Nvidia driver, no other pre-existing Nvidia CUDA packages are necessary.

* `tf.keras`
* `Model.compile` now support `steps_per_execution='auto'` as a parameter,
allowing automatic tuning of steps per execution during `Model.fit`,
`Model.predict`, and `Model.evaluate` for a significant performance boost.
* New `StepsPerExecutionTuner` class allows for `steps_per_execution` tuning
for custom training loops enabling performance boosts in custom workflows.
* Model now has two more settable parameters, `steps_per_execution` to set
this value to a manual heuristic, and `autotune_steps_per_execution` to
enable and disable tuning.

* Enable JIT-compiled i64-indexed kernels on GPU for large tensors with more
than 2**32 elements.
* Unary GPU kernels: Abs, Atanh, Acos, Acosh, Asin, Asinh, Atan, Cos,
Cosh, Sin, Sinh, Tan, Tanh.
* Binary GPU kernels: AddV2, Sub, Div, DivNoNan, Mul, MulNoNan, FloorDiv,
Equal, NotEqual, Greater, GreaterEqual, LessEqual, Less.
* Enable JIT-compiled i64-indexed kernels on GPU for large tensors with more than 2**32 elements.
* Unary GPU kernels: Abs, Atanh, Acos, Acosh, Asin, Asinh, Atan, Cos, Cosh, Sin, Sinh, Tan, Tanh.
* Binary GPU kernels: AddV2, Sub, Div, DivNoNan, Mul, MulNoNan, FloorDiv, Equal, NotEqual, Greater, GreaterEqual, LessEqual, Less.

* `tf.lite`
* Add experimental supports conversion of models that may be larger than 2GB
before buffer deduplication
* Add experimental supports conversion of models that may be larger than 2GB before buffer deduplication

# Bug Fixes and Other Changes
### Bug Fixes and Other Changes

* `tf.py_function` and `tf.numpy_function` can now be used as function
decorators for clearer code:
* `tf.py_function` and `tf.numpy_function` can now be used as function decorators for clearer code:
```
@tf.py_function(Tout=tf.float32)
def my_fun(x):
Expand All @@ -237,59 +198,47 @@ This release contains contributions from many people at Google, as well as:
```

* `tf.lite`
* `Strided_Slice` now supports `UINT32`.
* Add int8 and int16x8 support for LOG operator

* <SIMILAR TO ABOVE SECTION, BUT FOR OTHER IMPORTANT CHANGES / BUG FIXES>
* <IF A CHANGE CLOSES A GITHUB ISSUE, IT SHOULD BE DOCUMENTED HERE>
* <NOTES SHOULD BE GROUPED PER AREA>
* Strided_Slice now supports `UINT32`.

* `tf.config.experimental.enable_tensor_float_32_execution`
* Disabling TensorFloat-32 execution now causes TPUs to use float32
precision for float32 matmuls and other ops. TPUs have always used
bfloat16 precision for certain ops, like matmul, when such ops had float32
inputs. Now, disabling TensorFloat-32 by calling
`tf.config.experimental.enable_tensor_float_32_execution(False)` will
cause TPUs to use float32 precision for such ops instead of bfloat16.
* Disabling TensorFloat-32 execution now causes TPUs to use float32 precision for float32 matmuls and other ops. TPUs have always used bfloat16 precision for certain ops, like matmul, when such ops had float32 inputs. Now, disabling TensorFloat-32 by calling `tf.config.experimental.enable_tensor_float_32_execution(False)` will cause TPUs to use float32 precision for such ops instead of bfloat16.

* `tf.experimental.dtensor`
* API changes for Relayout. Added a new API, `dtensor.relayout_like`, for
relayouting a tensor according to the layout of another tensor.
* Added `dtensor.get_default_mesh`, for retrieving the current default
mesh under the dtensor context.
* \*fft\* ops now support dtensors with any layout. Fixed bug in 'fft2d/
fft3d', 'ifft2d/ifft3d', 'rfft2d/rfft3d', and 'irfft2d/irfft3d' for
sharded input.
* API changes for Relayout. Added a new API, `dtensor.relayout_like`, for relayouting a tensor according to the layout of another tensor.
* Added `dtensor.get_default_mesh`, for retrieving the current default mesh under the dtensor context.
* \*fft\* ops now support dtensors with any layout. Fixed bug in 'fft2d/fft3d', 'ifft2d/ifft3d', 'rfft2d/rfft3d', and 'irfft2d/irfft3d' for sharde input. Refer to this [blog post](https://blog.tensorflow.org/2023/08/distributed-fast-fourier-transform-in-tensorflow.html) for details.

* `tf.experimental.strict_mode`
* Added a new API, `strict_mode`, which converts all deprecation warnings
into runtime errors with instructions on switching to a recommended
substitute.
* Added a new API, `strict_mode`, which converts all deprecation warnings into runtime errors with instructions on switching to a recommended substitute.

* TensorFlow Debugger (tfdbg) CLI: ncurses-based CLI for tfdbg v1 was removed.

* TensorFlow now supports C++ RTTI on mobile and Android. To enable this
feature, pass the flag `--define=tf_force_rtti=true` to Bazel when building
TensorFlow. This may be needed when linking TensorFlow into RTTI-enabled
programs since mixing RTTI and non-RTTI code can cause ABI issues.
* TensorFlow now supports C++ RTTI on mobile and Android. To enable this feature, pass the flag `--define=tf_force_rtti=true` to Bazel when building TensorFlow. This may be needed when linking TensorFlow into RTTI-enabled programs since mixing RTTI and non-RTTI code can cause ABI issues.

* `tf.ones`, `tf.zeros`, `tf.fill`, `tf.ones_like`, `tf.zeros_like` now take an additional Layout argument that controls the output layout of their results.

* `tf.nest` and `tf.data` now support user defined classes implementing `__tf_flatten__` and `__tf_unflatten__` methods. See [nest_util code examples](https://github.com/tensorflow/tensorflow/blob/04869b4e63bfc03cb13627b3e1b879fdd0f69e34/tensorflow/python/util/nest_util.py#L97)
for an example.

* TensorFlow IO support is now available for Apple Silicon packages.

* `tf.ones`, `tf.zeros`, `tf.fill`, `tf.ones_like`, `tf.zeros_like` now take an
additional Layout argument that controls the output layout of their results.
* Refactor CpuExecutable to propagate LLVM errors.

* Limited support of unified n-d FFT Ops: `tf.signal.fftn`,
`tf.signal.ifftn`, `tf.signal.rfftn`, `tf.signal.irfftn`.
Note that they only support up to 3d and gradients are unsupported.
## Keras

Keras is a framework built on top of the TensorFlow. See more details on the Keras [website](https://keras.io/).

### Major Features and Improvements

* `tf.nest` and `tf.data` now support user defined classes implementing
`__tf_flatten__` and `__tf_unflatten__` methods. See [
nest_util code examples](https://github.com/tensorflow/tensorflow/blob/04869b4e63bfc03cb13627b3e1b879fdd0f69e34/tensorflow/python/util/nest_util.py#L97)
for an example.
* `tf.keras`
* `Model.compile` now support `steps_per_execution='auto'` as a parameter, allowing automatic tuning of steps per execution during `Model.fit`,
`Model.predict`, and `Model.evaluate` for a significant performance boost.

# Thanks to our Contributors
## Thanks to our Contributors

This release contains contributions from many people at Google, as well as:

<INSERT>, <NAME>, <HERE>, <USING>, <GITHUB>, <HANDLE>
Aakar Dwivedi, Adrian Popescu, ag.ramesh, Akhil Goel, Albert Zeyer, Alex Rosen, Alexey Vishnyakov, Andrew Goodbody, angerson, Ashiq Imran, Ayan Moitra, Ben Barsdell, Bhavani Subramanian, Boian Petkantchin, BrianWieder, Chris Mc, cloudhan, Connor Flanagan, Daniel Lang, Daniel Yudelevich, Darya Parygina, David Korczynski, David Svantesson, dingyuqing05, Dragan Mladjenovic, dskkato, Eli Kobrin, Erick Ochoa, Erik Schultheis, Frédéric Bastien, gaikwadrahul8, Gauri1 Deshpande, guozhong.zhuang, H. Vetinari, Isaac Cilia Attard, Jake Hall, Jason Furmanek, Jerry Ge, Jinzhe Zeng, JJ, johnnkp, Jonathan Albrecht, jongkweh, justkw, Kanvi Khanna, kikoxia, Koan-Sin Tan, Kun-Lu, ltsai1, Lu Teng, luliyucoordinate, Mahmoud Abuzaina, mdfaijul, Milos Puzovic, Nathan Luehr, Om Thakkar, pateldeev, Peng Sun, Philipp Hack, pjpratik, Poliorcetics, rahulbatra85, rangjiaheng, Renato Arantes, Robert Kalmar, roho, Rylan Justice, Sachin Muradi, samypr100, Saoirse Stewart, Shanbin Ke, Shivam Mishra, shuw, Song Ziming, Stephan Hartmann, Sulav, sushreebarsa, T Coxon, Tai Ly, talyz, Thibaut Goetghebuer-Planchon, Thomas Preud'Homme, tilakrayal, Tirumalesh, Tj Xu, Tom Allsop, Trevor Morris, Varghese, Jojimon, Wen Chen, Yaohui Liu, Yimei Sun, Zhoulong Jiang, Zhoulong, Jiang

# Release 2.13.0

Expand Down
Loading

0 comments on commit c942976

Please sign in to comment.