Commit Graph

425 Commits

Author SHA1 Message Date
Quoc Truong
f01a7fea8c Update ML Build Docker container to use hermetic C++
PiperOrigin-RevId: 826147864
2025-10-30 13:25:44 -07:00
Yulia Baturina
5f41aebf5f Increase the Linux arm64 wheel size limit to 270 MB to unblock nightly builds.
PiperOrigin-RevId: 820758886
2025-10-17 11:18:57 -07:00
Yulia Baturina
2fe50c5020 Fix MacOS nightly wheel builds by adding h5py version limit.
The new h5py releases support only MacOS 14, 15 (TF needs MacOS 10, 11).

PiperOrigin-RevId: 819884128
2025-10-15 13:30:40 -07:00
Yulia Baturina
e3d3d477e0 Ignore errors in brew update on MacOS platform.
PiperOrigin-RevId: 815907495
2025-10-06 15:42:26 -07:00
Quoc Truong
a7fc821eb1 Reverts 39e05ea1fb
PiperOrigin-RevId: 815778083
2025-10-06 10:18:09 -07:00
Quoc Truong
39e05ea1fb Update ML Build Docker container to use hermetic C++
PiperOrigin-RevId: 814816242
2025-10-03 13:53:00 -07:00
Fergus Henderson
6f3bab216d Update from flatbuffers 25.2.10 to 25.9.23.
PiperOrigin-RevId: 813955553
2025-10-01 16:25:25 -07:00
A. Unique TensorFlower
fce41472ac Increase TFCI_WHL_SIZE_LIMIT for Linux ARM64.
PiperOrigin-RevId: 810553684
2025-09-23 13:23:05 -07:00
A. Unique TensorFlower
256f9804a9 Install NVIDIA dependencies for TF GPU builds.
PiperOrigin-RevId: 810154637
2025-09-22 14:39:32 -07:00
A. Unique TensorFlower
12458e10fb Add @llvm-project//third-party/siphash license for [LLVM integrate](0635220735) to the list of allowed missing licenses.
PiperOrigin-RevId: 808994960
2025-09-19 05:23:13 -07:00
A. Unique TensorFlower
3eae65361b Update rules_python to v1.6 in XLA and TensorFlow projects.
`com_google_protobuf` and `rules_cc` initialization was moved to `python_init_rules` macros.

The JAX repository update will be done [in the next step](https://github.com/jax-ml/jax/pull/31709)

PiperOrigin-RevId: 808689003
2025-09-18 12:30:45 -07:00
Quoc Truong
77b8cc1664 Change RBE Docker Image to one that only installs nvidia-driver-580-open and cuda-compat
Some tests have to be disabled for now until b/435404154 is fixed

PiperOrigin-RevId: 808319614
2025-09-17 17:19:40 -07:00
Quoc Truong
77c90d2a71 Change RBE Docker Image to one that only installs nvidia-driver-580-open and not other CUDA packages
This will help prevent hermetic leaks.

PiperOrigin-RevId: 805512380
2025-09-10 14:31:22 -07:00
Quoc Truong
16823ee57d Explicitly install cudnn-cuda-13 for ML container
Otherwise, we run into a dependency issue with `libcudnn9-dev-cuda-13 : Depends: libcudnn9-headers-cuda-13 (= 9.12.0.46-1) but 9.13.0.50-1 is to be installed`

PiperOrigin-RevId: 805396827
2025-09-10 09:44:14 -07:00
A. Unique TensorFlower
5feca55740 Put NVIDIA wheels in ci/official/requirements_updater/nvidia-requirements.txt to have central place defining wheel versions.
This change is made to have consistency in parsing NVIDIA dependencies with [JAX repository](https://github.com/jax-ml/jax/pull/30706)

`nvidia-requirements.txt` is used in Bazel hermetic python lock files and in the `tools/pip_package/setup.py` with the package requirements.

The file content is saved in the `nvidia_wheel_versions repository` and passed as an argument to `modify_setup_py.py` that populates `setup_py.tpl` script.

PiperOrigin-RevId: 802755816
2025-09-03 16:57:17 -07:00
Quoc Truong
6a3097bdf4 Create a new ml build container for CUDA 13.0 and CUDNN 9.12
PiperOrigin-RevId: 795590731
2025-08-15 13:39:50 -07:00
A. Unique TensorFlower
46cf20bf28 [NCCL] Upgrade TF NCCL version to 2.27.7
PiperOrigin-RevId: 793761504
2025-08-11 12:57:36 -07:00
A. Unique TensorFlower
26f7ae5cab Update rules_ml_toolchain dependency to latest version.
PiperOrigin-RevId: 791817714
2025-08-06 13:43:08 -07:00
Kanglan Tang
777469fadf Build python 3.14.0rc1 and 3.14-nogil from source in linux arm64 docker image
Python 3.14.0rc1 is not available on linux arm64 now.

PiperOrigin-RevId: 789842679
2025-08-01 12:14:43 -07:00
Kanglan Tang
f459343d24 Upgrade python 3.14.0rc1 and install python 3.14-nogil in linux docker images
PiperOrigin-RevId: 789527645
2025-07-31 19:44:57 -07:00
A. Unique TensorFlower
b0b73e1d3b Fix release wheels build.
PiperOrigin-RevId: 788247912
2025-07-28 19:07:51 -07:00
A. Unique TensorFlower
f4ee7a188e Remove local_config_nvshmem repository from XLA and Tensorflow WORKSPACE files.
Upgrading manylinux compliancy tag in [JAX PR](https://github.com/jax-ml/jax/pull/29672) enabled building targets with linked `nvshmem` libraries.

PiperOrigin-RevId: 786533277
2025-07-23 20:39:56 -07:00
A. Unique TensorFlower
30d53c63ba Update keras-nightly and typing-extensions versions in the lock files.
PiperOrigin-RevId: 786399568
2025-07-23 13:24:07 -07:00
A. Unique TensorFlower
026ccaa614 [NCCL] Upgrade TF NCCL version to 2.26.5
PiperOrigin-RevId: 784275018
2025-07-17 13:00:41 -07:00
A. Unique TensorFlower
f7dfba3f74 Add Hermetic C++ Toolchains for Linux x86_64 builds.
Hermetic toolchains give us builds that are isolated from the host system, cutting down on unexpected dependencies and side effects.

With these changes, TensorFlow will build for Linux x86_64 architectures (both CPU and CUDA-enabled GPU) using self-contained C++ toolchains. If you need to use a non-hermetic toolchain, you can do so by adding the flag --config=clang_local. For remote builds with a non-hermetic toolchain, simply append _clang_local to your existing RBE flag. For example, if your hermetic RBE build uses --config=rbe_linux_cpu, the non-hermetic version would be --config=rbe_linux_cpu_clang_local.

    Example: Run CPU tests for Linux x86_64

    For hermetic tests, run following command (no env variables like CC, CXX, BAZEL_COMPILER, CLANG_COMPILER_PATH):
	bazel test \
		--config=avx_linux \
		--config=release_linux_base \
		--config=linux_cpu_pycpp_test_filters \
		--repo_env=HERMETIC_PYTHON_VERSION=3.11 \
		//tensorflow/... -- -//tensorflow/compiler/tf2tensorrt/... -//tensorflow/core/tpu/... -//tensorflow/lite/...  -//tensorflow/tools/toolchains/...

    For Linux x86_64 non-hermetic tests use commands with the flag "--config=clang_local" and env variables CC, CXX, BAZEL_COMPILER, CLANG_COMPILER_PATH, etc.:
	bazel test \
		--config=clang_local \
		--config=avx_linux \
		--config=release_linux_base \
		--config=linux_cpu_pycpp_test_filters \
		--repo_env=HERMETIC_PYTHON_VERSION=3.11 \
		--action_env=CLANG_COMPILER_PATH=/usr/lib/llvm-18/bin/clang \
		--host_action_env=CLANG_COMPILER_PATH=/usr/lib/llvm-18/bin/clang \
		--repo_env=CC=/usr/lib/llvm-18/bin/clang \
		--repo_env=CXX=/usr/lib/llvm-18/bin/clang++ \
		--repo_env=BAZEL_COMPILER=/usr/lib/llvm-18/bin/clang \
		//tensorflow/... -- -//tensorflow/compiler/tf2tensorrt/... -//tensorflow/core/tpu/... -//tensorflow/lite/...  -//tensorflow/tools/toolchains/...

PiperOrigin-RevId: 783911228
2025-07-16 15:21:17 -07:00
TensorFlower Gardener
38e32269d6 Merge pull request #96408 from tensorflow:dependabot/pip/ci/official/requirements_updater/numpy1_requirements/setuptools-78.1.1
PiperOrigin-RevId: 780886988
2025-07-08 23:53:36 -07:00
dependabot[bot]
b5eaf8b8b9
Bump setuptools in /ci/official/requirements_updater/numpy1_requirements
Bumps [setuptools](https://github.com/pypa/setuptools) from 70.0.0 to 78.1.1.
- [Release notes](https://github.com/pypa/setuptools/releases)
- [Changelog](https://github.com/pypa/setuptools/blob/main/NEWS.rst)
- [Commits](https://github.com/pypa/setuptools/compare/v70.0.0...v78.1.1)

---
updated-dependencies:
- dependency-name: setuptools
  dependency-version: 78.1.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-04 11:09:25 +00:00
dependabot[bot]
5aba95bf87
Bump requests in /ci/official/requirements_updater/numpy1_requirements
Bumps [requests](https://github.com/psf/requests) from 2.32.3 to 2.32.4.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.32.3...v2.32.4)

---
updated-dependencies:
- dependency-name: requests
  dependency-version: 2.32.4
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-04 11:09:01 +00:00
dependabot[bot]
8fd6ecebb4
Bump urllib3 in /ci/official/requirements_updater/numpy1_requirements
Bumps [urllib3](https://github.com/urllib3/urllib3) from 2.4.0 to 2.5.0.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/2.4.0...2.5.0)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-version: 2.5.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-01 14:32:58 +00:00
A. Unique TensorFlower
ac0a1bae1b Rollback integration of hermetic C++ toolchains in Tensorflow as they increase the wheel size and raise the value of manyLinux compliancy tag.
Reverts ac56b0e840

PiperOrigin-RevId: 776274067
2025-06-26 14:16:01 -07:00
A. Unique TensorFlower
ac56b0e840 Integrate hermetic ML toolchains for TensorFlow.
Hermetic C++ toolchains and CUDA are enabled for Linux x86_64 platform by default. List of covered OSs will be extended in a few closest months. Developers still could use  non hermetic toolchains with help of --config=clang_local flag.

std::reduce replace with a traditional for loop. This is necessary because GCC 8 offers only partial support for C++17, and using std::reduce in this environment leads to "Undefined method" error.
PiperOrigin-RevId: 775771057
2025-06-25 11:43:53 -07:00
Ezekiel Calubaquib
612f899e11 Fix failing macos arm64 wheel builds
PiperOrigin-RevId: 774958440
2025-06-23 16:03:02 -07:00
Vadym Matsishevskyi
724f36e009 Major deps update:
-Protobuf 5.28.3
-Grpc 1.68.2
-Abseil: LTS 20240116.3
-Plus some other transitive/related deps, riegeli and pybind11 in particular.
-rules_python & rules_cc will be updated in a subsequent CL as they are their own can of worms, plus there are a few pending changes in rules_python which were not pushed yet.

This also switches default protobuf implementation we rely on for bazel builds from cpp to upb, meaning all projects dependin on htis one must be built with build --action_env=PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=upb.

PiperOrigin-RevId: 773586210
2025-06-20 01:35:16 -07:00
Kanglan Tang
1e70fafb4b Build python3.14.0b1 from source and install it in the linux docker images
PiperOrigin-RevId: 769677798
2025-06-10 10:21:02 -07:00
Quoc Truong
9fc62761fd Remove linux_arm64 container as this has been moved to ml_build_arm64
PiperOrigin-RevId: 766897560
2025-06-03 18:09:09 -07:00
Quoc Truong
5621db3a79 Update workflow files to use new ml-build containers.
PiperOrigin-RevId: 766270515
2025-06-02 11:52:41 -07:00
Kanglan Tang
db6cde663d Build python3.14.0a6 from source and install it in the linux x86 docker image
Due to the ABI instability of the CPython 3.14 prerelease, it's essential that our build and test processes use the same Python version. Currently, we're building and installing CPython 3.14.0a6 within our docker image for pytest. This specific alpha version was chosen because the `python-build-standalone` repository, which our hermetic bazel builds rely on, currently only supports [3.14 alpha releases](https://github.com/astral-sh/python-build-standalone/releases/tag/20250409). We plan to upgrade our Python 3.14 version as soon as the `python-build-standalone` repository begins supporting beta releases.

PiperOrigin-RevId: 765351561
2025-05-30 15:19:36 -07:00
Quoc Truong
d60f47b8f4 Remove the no longer used build.sh file to avoid confusion.
PiperOrigin-RevId: 764880850
2025-05-29 14:35:36 -07:00
A. Unique TensorFlower
f4860b5614 Upgrade the h5py version in requirement_lock files.
PiperOrigin-RevId: 763859858
2025-05-27 11:04:21 -07:00
David Dunleavy
c5f3cdb243 Internal dir restructure
PiperOrigin-RevId: 756084150
2025-05-07 18:32:02 -07:00
Michael Hudgins
3002a7f607 [CI] Update twine version in ml-build docker files
Twine must be updated to support metadata version 2.4

PiperOrigin-RevId: 754019315
2025-05-02 09:02:16 -07:00
dependabot[bot]
7c3e637e32
Bump ubuntu in /ci/official/containers/linux_arm64
Bumps ubuntu from `8e5c4f0` to `8feb4d8`.

---
updated-dependencies:
- dependency-name: ubuntu
  dependency-version: '20.04'
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-01 08:44:58 +00:00
Kanglan Tang
7c67fbd917 No public description
PiperOrigin-RevId: 752493540
2025-04-28 17:01:01 -07:00
Ezekiel Calubaquib
cb392b49f7 Use numpy 1.26.4 for Python 3.13
PiperOrigin-RevId: 751187482
2025-04-24 17:22:38 -07:00
Ezekiel Calubaquib
7ac25fced6 Update pyenv before install
PiperOrigin-RevId: 751187234
2025-04-24 17:06:43 -07:00
Ezekiel Calubaquib
d9062cfd61 Set TFCI_MACOS_UPGRADE_PYENV_ENABLE=1 for python 3.13
PiperOrigin-RevId: 750361945
2025-04-22 16:28:49 -07:00
A. Unique TensorFlower
4dd87b5325 Add --repo_env=USE_PYWRAP_RULES=True to cross-compile linux arm64 builds.
PiperOrigin-RevId: 747454934
2025-04-14 10:26:43 -07:00
A. Unique TensorFlower
c9ff6b6245 Add --repo_env=USE_PYWRAP_RULES=True to linux arm64 builds.
PiperOrigin-RevId: 746206292
2025-04-10 16:03:24 -07:00
Ezekiel Calubaquib
6358e9ee9c Add python 3.13 version for wheel release job for linux, mac, win
PiperOrigin-RevId: 745744999
2025-04-09 15:12:11 -07:00
Ezekiel Calubaquib
c0093bfb21 Add python 3.13 requirements and conditions for TF
the code below creates a condition to run specific Python.h code in cpp for python3.13 as the following functions are deprecated:

_PyArg_NoKeywords (removed)
_PyObject_VisitManagedDict (renamed to PyObject_VisitManagedDict)
_PyObject_ClearManagedDict (renamed to PyObject_ClearManagedDict)

PiperOrigin-RevId: 745284443
2025-04-08 15:00:52 -07:00