Skip to content

Commit 0962b96

Browse files
Merge pull request #219 from ROCm/ci-upstream-sync-104_1
CI: 02/03/25 upstream sync
2 parents bc2b5d0 + ec2c305 commit 0962b96

File tree

118 files changed

+4869
-1429
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

118 files changed

+4869
-1429
lines changed

.github/workflows/bazel_cpu_rbe.yml

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,21 +22,19 @@ concurrency:
2222
jobs:
2323
run_tests:
2424
if: github.event.repository.fork == false
25-
strategy:
26-
matrix:
27-
runner: ["linux-x86-n2-16", "linux-arm64-c4a-16"]
28-
enable-x_64: [1, 0]
29-
3025
runs-on: ${{ matrix.runner }}
3126
container: ${{ (contains(matrix.runner, 'linux-x86') && 'us-central1-docker.pkg.dev/tensorflow-sigs/tensorflow/ml-build:latest') ||
3227
(contains(matrix.runner, 'linux-arm64') && 'us-central1-docker.pkg.dev/tensorflow-sigs/tensorflow/ml-build-arm64:latest') }}
33-
3428
env:
3529
JAXCI_HERMETIC_PYTHON_VERSION: "3.12"
3630
JAXCI_ENABLE_X64: ${{ matrix.enable-x_64 }}
37-
31+
# Begin Presubmit Naming Check - name modification requires internal check to be updated
32+
strategy:
33+
matrix:
34+
runner: ["linux-x86-n2-16", "linux-arm64-c4a-16"]
35+
enable-x_64: [1, 0]
3836
name: "Bazel CPU tests (${{ matrix.runner }}, Python 3.12, x64=${{ matrix.enable-x_64 }})"
39-
37+
# End Presubmit Naming Check github-cpu-presubmits
4038
steps:
4139
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
4240
- name: Wait For Connection

.github/workflows/bazel_cuda_non_rbe.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ on:
3232
gcs_download_uri:
3333
description: "GCS location URI from where the artifacts should be downloaded"
3434
required: true
35-
default: 'gs://general-ml-ci-transient/jax-github-actions/jax-fork/${{ github.workflow }}/${{ github.run_number }}/${{ github.run_attempt }}'
35+
default: 'gs://general-ml-ci-transient/jax-github-actions/jax/${{ github.workflow }}/${{ github.run_number }}/${{ github.run_attempt }}'
3636
type: string
3737
halt-for-connection:
3838
description: 'Should this workflow run wait for a remote connection?'

.github/workflows/bazel_cuda_rbe.yml

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,20 +22,18 @@ concurrency:
2222
jobs:
2323
run_tests:
2424
if: github.event.repository.fork == false
25-
strategy:
26-
matrix:
27-
runner: ["linux-x86-n2-16"]
28-
enable-x_64: [1, 0]
29-
3025
runs-on: ${{ matrix.runner }}
3126
container: 'us-central1-docker.pkg.dev/tensorflow-sigs/tensorflow/ml-build:latest'
32-
3327
env:
3428
JAXCI_HERMETIC_PYTHON_VERSION: "3.12"
3529
JAXCI_ENABLE_X64: ${{ matrix.enable-x_64 }}
36-
30+
# Begin Presubmit Naming Check - name modification requires internal check to be updated
31+
strategy:
32+
matrix:
33+
runner: ["linux-x86-n2-16"]
34+
enable-x_64: [1, 0]
3735
name: "Bazel single accelerator CUDA tests (${{ matrix.runner }}, Python 3.12, x64=${{ matrix.enable-x_64 }})"
38-
36+
# End Presubmit Naming Check github-cuda-presubmits
3937
steps:
4038
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
4139
- name: Wait For Connection

.github/workflows/cloud-tpu-ci-presubmit.yml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,16 +30,16 @@ concurrency:
3030
jobs:
3131
cloud-tpu-test:
3232
if: github.event.repository.fork == false
33+
# Begin Presubmit Naming Check - name modification requires internal check to be updated
3334
strategy:
3435
fail-fast: false # don't cancel all jobs on failure
3536
matrix:
3637
tpu: [
3738
{type: "v5e-8", cores: "8", runner: "linux-x86-ct5lp-224-8tpu"}
3839
]
3940
python-version: ["3.10"]
40-
4141
name: "TPU test (jaxlib=head, ${{ matrix.tpu.type }})"
42-
42+
# End Presubmit Naming Check github-tpu-presubmits
4343
env:
4444
JAXCI_PYTHON: python${{ matrix.python-version }}
4545
JAXCI_TPU_CORES: ${{ matrix.tpu.cores }}
@@ -52,7 +52,6 @@ jobs:
5252
defaults:
5353
run:
5454
shell: bash -ex {0}
55-
5655
steps:
5756
# https://opensource.google/documentation/reference/github/services#actions
5857
# mandates using a specific commit for non-Google actions. We use
@@ -90,4 +89,4 @@ jobs:
9089
with:
9190
halt-dispatch-input: ${{ inputs.halt-for-connection }}
9291
- name: Install jaxlib wheel and run tests
93-
run: ./ci/run_pytest_tpu.sh
92+
run: ./ci/run_pytest_tpu.sh

.github/workflows/jax-array-api.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ jobs:
2828
with:
2929
repository: data-apis/array-api-tests
3030
# TODO(jakevdp) update this to a stable release/tag when available.
31-
ref: 'f7a74a685d78d98203fa991fc19a5d1fda57c212' # Latest commit as of 2025-01-07
31+
ref: 'd982a6245400295477f5da5afa1c4a2a5e641ea4' # Latest commit as of 2025-01-30
3232
submodules: 'true'
3333
path: 'array-api-tests'
3434
- name: Set up Python ${{ matrix.python-version }}
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
diff --git a/build/requirements_lock_3_13_ft.txt b/build/requirements_lock_3_13_ft.txt
2+
index dfefaf042..2700e140e 100644
3+
--- a/build/requirements_lock_3_13_ft.txt
4+
+++ b/build/requirements_lock_3_13_ft.txt
5+
@@ -4,6 +4,12 @@
6+
#
7+
# pip-compile --allow-unsafe --generate-hashes --output-file=build/requirements_lock_3_13_ft.txt build/requirements.in
8+
#
9+
+
10+
+--pre
11+
+--extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple
12+
+numpy
13+
+
14+
+
15+
absl-py==2.1.0 \
16+
--hash=sha256:526a04eadab8b4ee719ce68f204172ead1027549089702d99b9059f129ff1308 \
17+
--hash=sha256:7820790efbb316739cde8b4e19357243fc3608a152024288513dd968d7d959ff
18+
@@ -328,68 +334,6 @@ mpmath==1.3.0 \
19+
--hash=sha256:7a28eb2a9774d00c7bc92411c19a89209d5da7c4c9a9e227be8330a23a25b91f \
20+
--hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c
21+
# via -r build/test-requirements.txt
22+
-numpy==2.2.1 ; python_version >= "3.13" \
23+
- --hash=sha256:059e6a747ae84fce488c3ee397cee7e5f905fd1bda5fb18c66bc41807ff119b2 \
24+
- --hash=sha256:08ef779aed40dbc52729d6ffe7dd51df85796a702afbf68a4f4e41fafdc8bda5 \
25+
- --hash=sha256:164a829b6aacf79ca47ba4814b130c4020b202522a93d7bff2202bfb33b61c60 \
26+
- --hash=sha256:26c9c4382b19fcfbbed3238a14abf7ff223890ea1936b8890f058e7ba35e8d71 \
27+
- --hash=sha256:27f5cdf9f493b35f7e41e8368e7d7b4bbafaf9660cba53fb21d2cd174ec09631 \
28+
- --hash=sha256:31b89fa67a8042e96715c68e071a1200c4e172f93b0fbe01a14c0ff3ff820fc8 \
29+
- --hash=sha256:32cb94448be47c500d2c7a95f93e2f21a01f1fd05dd2beea1ccd049bb6001cd2 \
30+
- --hash=sha256:360137f8fb1b753c5cde3ac388597ad680eccbbbb3865ab65efea062c4a1fd16 \
31+
- --hash=sha256:3683a8d166f2692664262fd4900f207791d005fb088d7fdb973cc8d663626faa \
32+
- --hash=sha256:38efc1e56b73cc9b182fe55e56e63b044dd26a72128fd2fbd502f75555d92591 \
33+
- --hash=sha256:3d03883435a19794e41f147612a77a8f56d4e52822337844fff3d4040a142964 \
34+
- --hash=sha256:3ecc47cd7f6ea0336042be87d9e7da378e5c7e9b3c8ad0f7c966f714fc10d821 \
35+
- --hash=sha256:40f9e544c1c56ba8f1cf7686a8c9b5bb249e665d40d626a23899ba6d5d9e1484 \
36+
- --hash=sha256:4250888bcb96617e00bfa28ac24850a83c9f3a16db471eca2ee1f1714df0f957 \
37+
- --hash=sha256:4511d9e6071452b944207c8ce46ad2f897307910b402ea5fa975da32e0102800 \
38+
- --hash=sha256:45681fd7128c8ad1c379f0ca0776a8b0c6583d2f69889ddac01559dfe4390918 \
39+
- --hash=sha256:48fd472630715e1c1c89bf1feab55c29098cb403cc184b4859f9c86d4fcb6a95 \
40+
- --hash=sha256:4c86e2a209199ead7ee0af65e1d9992d1dce7e1f63c4b9a616500f93820658d0 \
41+
- --hash=sha256:4dfda918a13cc4f81e9118dea249e192ab167a0bb1966272d5503e39234d694e \
42+
- --hash=sha256:5062dc1a4e32a10dc2b8b13cedd58988261416e811c1dc4dbdea4f57eea61b0d \
43+
- --hash=sha256:51faf345324db860b515d3f364eaa93d0e0551a88d6218a7d61286554d190d73 \
44+
- --hash=sha256:526fc406ab991a340744aad7e25251dd47a6720a685fa3331e5c59fef5282a59 \
45+
- --hash=sha256:53c09385ff0b72ba79d8715683c1168c12e0b6e84fb0372e97553d1ea91efe51 \
46+
- --hash=sha256:55ba24ebe208344aa7a00e4482f65742969a039c2acfcb910bc6fcd776eb4355 \
47+
- --hash=sha256:5b6c390bfaef8c45a260554888966618328d30e72173697e5cabe6b285fb2348 \
48+
- --hash=sha256:5c5cc0cbabe9452038ed984d05ac87910f89370b9242371bd9079cb4af61811e \
49+
- --hash=sha256:5edb4e4caf751c1518e6a26a83501fda79bff41cc59dac48d70e6d65d4ec4440 \
50+
- --hash=sha256:61048b4a49b1c93fe13426e04e04fdf5a03f456616f6e98c7576144677598675 \
51+
- --hash=sha256:676f4eebf6b2d430300f1f4f4c2461685f8269f94c89698d832cdf9277f30b84 \
52+
- --hash=sha256:67d4cda6fa6ffa073b08c8372aa5fa767ceb10c9a0587c707505a6d426f4e046 \
53+
- --hash=sha256:694f9e921a0c8f252980e85bce61ebbd07ed2b7d4fa72d0e4246f2f8aa6642ab \
54+
- --hash=sha256:733585f9f4b62e9b3528dd1070ec4f52b8acf64215b60a845fa13ebd73cd0712 \
55+
- --hash=sha256:7671dc19c7019103ca44e8d94917eba8534c76133523ca8406822efdd19c9308 \
56+
- --hash=sha256:780077d95eafc2ccc3ced969db22377b3864e5b9a0ea5eb347cc93b3ea900315 \
57+
- --hash=sha256:7ba9cc93a91d86365a5d270dee221fdc04fb68d7478e6bf6af650de78a8339e3 \
58+
- --hash=sha256:89b16a18e7bba224ce5114db863e7029803c179979e1af6ad6a6b11f70545008 \
59+
- --hash=sha256:9036d6365d13b6cbe8f27a0eaf73ddcc070cae584e5ff94bb45e3e9d729feab5 \
60+
- --hash=sha256:93cf4e045bae74c90ca833cba583c14b62cb4ba2cba0abd2b141ab52548247e2 \
61+
- --hash=sha256:9ad014faa93dbb52c80d8f4d3dcf855865c876c9660cb9bd7553843dd03a4b1e \
62+
- --hash=sha256:9b1d07b53b78bf84a96898c1bc139ad7f10fda7423f5fd158fd0f47ec5e01ac7 \
63+
- --hash=sha256:a7746f235c47abc72b102d3bce9977714c2444bdfaea7888d241b4c4bb6a78bf \
64+
- --hash=sha256:aa3017c40d513ccac9621a2364f939d39e550c542eb2a894b4c8da92b38896ab \
65+
- --hash=sha256:b34d87e8a3090ea626003f87f9392b3929a7bbf4104a05b6667348b6bd4bf1cd \
66+
- --hash=sha256:b541032178a718c165a49638d28272b771053f628382d5e9d1c93df23ff58dbf \
67+
- --hash=sha256:ba5511d8f31c033a5fcbda22dd5c813630af98c70b2661f2d2c654ae3cdfcfc8 \
68+
- --hash=sha256:bc8a37ad5b22c08e2dbd27df2b3ef7e5c0864235805b1e718a235bcb200cf1cb \
69+
- --hash=sha256:bff7d8ec20f5f42607599f9994770fa65d76edca264a87b5e4ea5629bce12268 \
70+
- --hash=sha256:c1ad395cf254c4fbb5b2132fee391f361a6e8c1adbd28f2cd8e79308a615fe9d \
71+
- --hash=sha256:f1d09e520217618e76396377c81fba6f290d5f926f50c35f3a5f72b01a0da780 \
72+
- --hash=sha256:f3eac17d9ec51be534685ba877b6ab5edc3ab7ec95c8f163e5d7b39859524716 \
73+
- --hash=sha256:f419290bc8968a46c4933158c91a0012b7a99bb2e465d5ef5293879742f8797e \
74+
- --hash=sha256:f62aa6ee4eb43b024b0e5a01cf65a0bb078ef8c395e8713c6e8a12a697144528 \
75+
- --hash=sha256:f74e6fdeb9a265624ec3a3918430205dff1df7e95a230779746a6af78bc615af \
76+
- --hash=sha256:f9b57eaa3b0cd8db52049ed0330747b0364e899e8a606a624813452b8203d5f7 \
77+
- --hash=sha256:fce4f615f8ca31b2e61aa0eb5865a21e14f5629515c9151850aa936c02a1ee51
78+
- # via
79+
- # -r build/requirements.in
80+
- # contourpy
81+
- # matplotlib
82+
- # ml-dtypes
83+
- # scipy
84+
opt-einsum==3.4.0 \
85+
--hash=sha256:69bb92469f86a1565195ece4ac0323943e83477171b91d24c35afe028a90d7cd \
86+
--hash=sha256:96ca72f1b886d148241348783498194c577fa30a8faac108586b14f1ba4473ac
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
# false-positive caused because we haven't tsan-instrumented libgcc_s. Multiple threads
2+
# are racing on a call to __register_frame_info(), but that function appears to be correctly locked internally.
3+
race:llvm::RuntimeDyldELF::registerEHFrames
4+
5+
# https://github.com/python/cpython/issues/128050
6+
race:partial_vectorcall_fallback
7+
8+
# https://github.com/python/cpython/issues/128100
9+
race:ensure_nonmanaged_dict
10+
11+
# https://github.com/openxla/xla/issues/20686
12+
race:dnnl_sgemm
13+
14+
# https://github.com/python/cpython/issues/128130
15+
race_top:run_eval_code_obj
16+
17+
# Likely only happens when the process is crashing.
18+
race:dump_traceback
19+
20+
# https://github.com/python/cpython/issues/128137
21+
# Fixed in Python 3.14, but not backported to 3.13.
22+
race:immortalize_interned
23+
24+
# https://github.com/python/cpython/issues/128144
25+
# Fixed in Python 3.14, but not backported to 3.13.
26+
race_top:PyMember_GetOne
27+
28+
# https://github.com/python/cpython/issues/128133
29+
# Fixed in Python 3.14, but not backported to 3.13.
30+
race:bytes_hash
31+
32+
# https://github.com/python/cpython/issues/128657
33+
race:py_digest_by_name
34+
35+
# https://github.com/python/cpython/issues/128714
36+
race:func_get_annotations
37+
race:type_get_annotations
38+
39+
# https://github.com/python/cpython/issues/129533
40+
race:PyGC_Disable
41+
race:PyGC_Enable
42+
43+
# Races because the LAPACK and BLAS in our scipy isn't TSAN instrumented.
44+
race:heevd_ffi
45+
race:gesdd_ffi
46+
race:dscal_k_
47+
race:scal_k_
48+
race:gemm_beta
49+
race:gemm_oncopy
50+
51+
52+
# Races that are probably fixed
53+
# https://github.com/numpy/numpy/issues/28041
54+
# race:get_initial_from_ufunc
55+
#
56+
# https://github.com/numpy/numpy/issues/28042
57+
# race:PyArray_UpdateFlags
58+
#
59+
# https://github.com/python/cpython/issues/128717
60+
# race:Py_SetRecursionLimit
61+
#
62+
# https://github.com/numpy/numpy/issues/28143
63+
# race:PyArray_CheckFromAny_int
64+
65+
# https://github.com/python/cpython/issues/128759
66+
# race:PyType_Modified

.github/workflows/tsan.yaml

Lines changed: 125 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,125 @@
1+
name: CI - Free-threading and Thread Sanitizer (nightly)
2+
3+
concurrency:
4+
group: ${{ github.workflow }}-${{ github.ref }}
5+
cancel-in-progress: true
6+
7+
on:
8+
schedule:
9+
- cron: "0 12 * * *" # Daily at 12:00 UTC
10+
workflow_dispatch: # allows triggering the workflow run manually
11+
pull_request: # Automatically trigger on pull requests affecting this file
12+
branches:
13+
- main
14+
paths:
15+
- '**/workflows/tsan.yaml'
16+
17+
jobs:
18+
tsan:
19+
runs-on: linux-x86-n2-64
20+
container:
21+
image: index.docker.io/library/ubuntu@sha256:b359f1067efa76f37863778f7b6d0e8d911e3ee8efa807ad01fbf5dc1ef9006b # ratchet:ubuntu:24.04
22+
strategy:
23+
fail-fast: false
24+
defaults:
25+
run:
26+
shell: bash -l {0}
27+
steps:
28+
# Install git before actions/checkout as otherwise it will download the code with the GitHub
29+
# REST API and therefore any subsequent git commands will fail.
30+
- name: Install clang 18
31+
env:
32+
DEBIAN_FRONTEND: noninteractive
33+
run: |
34+
apt update
35+
apt install -y clang-18 libstdc++-14-dev build-essential libssl-dev \
36+
zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev curl git \
37+
libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev \
38+
libffi-dev liblzma-dev
39+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
40+
with:
41+
path: jax
42+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
43+
with:
44+
repository: python/cpython
45+
path: cpython
46+
ref: "3.13"
47+
48+
- name: Restore cached CPython with TSAN
49+
id: cache-cpython-tsan-restore
50+
uses: actions/cache/restore@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
51+
with:
52+
path: |
53+
./python-tsan.tgz
54+
key: ${{ runner.os }}-cpython-tsan-${{ hashFiles('cpython/configure.ac') }}
55+
56+
- name: Build CPython with TSAN enabled
57+
if: steps.cache-cpython-tsan-restore.outputs.cache-hit != 'true'
58+
run: |
59+
cd cpython
60+
mkdir ${GITHUB_WORKSPACE}/cpython-tsan
61+
CC=clang-18 CXX=clang++-18 ./configure --prefix ${GITHUB_WORKSPACE}/cpython-tsan --disable-gil --with-thread-sanitizer
62+
make -j64
63+
make install -j64
64+
# Check whether free-threading mode is enabled
65+
PYTHON_GIL=0 ${GITHUB_WORKSPACE}/cpython-tsan/bin/python3 -c "import sys; assert not sys._is_gil_enabled()"
66+
67+
# Create archive to be used with bazel as hermetic python:
68+
cd ${GITHUB_WORKSPACE} && tar -czpf python-tsan.tgz cpython-tsan
69+
70+
- name: Save CPython with TSAN
71+
id: cache-cpython-tsan-save
72+
if: steps.cache-cpython-tsan-restore.outputs.cache-hit != 'true'
73+
uses: actions/cache/save@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
74+
with:
75+
path: |
76+
./python-tsan.tgz
77+
key: ${{ runner.os }}-cpython-tsan-${{ hashFiles('cpython/configure.ac') }}
78+
79+
- name: Build Jax and run tests
80+
timeout-minutes: 120
81+
env:
82+
JAX_NUM_GENERATED_CASES: 1
83+
JAX_ENABLE_X64: true
84+
JAX_SKIP_SLOW_TESTS: true
85+
PY_COLORS: 1
86+
run: |
87+
cd jax
88+
89+
export PYTHON_SHA256=($(sha256sum ${GITHUB_WORKSPACE}/python-tsan.tgz))
90+
echo "Python sha256: ${PYTHON_SHA256}"
91+
92+
python3 -VV
93+
python3 build/build.py build --configure_only \
94+
--python_version=3.13-ft \
95+
--bazel_options=--repo_env=HERMETIC_PYTHON_URL="file://${GITHUB_WORKSPACE}/python-tsan.tgz" \
96+
--bazel_options=--repo_env=HERMETIC_PYTHON_SHA256=${PYTHON_SHA256} \
97+
--bazel_options=--repo_env=HERMETIC_PYTHON_PREFIX="cpython-tsan/" \
98+
--bazel_options=--color=yes \
99+
--bazel_options=--copt=-fsanitize=thread \
100+
--bazel_options=--linkopt="-fsanitize=thread" \
101+
--bazel_options=--copt=-g \
102+
--clang_path=/usr/bin/clang-18
103+
104+
# Apply a patch to numpy in requirements lock 3.13 ft to use the nightly version
105+
git apply .github/workflows/requirements_lock_3_13_ft.patch
106+
107+
echo "JAX_NUM_GENERATED_CASES=$JAX_NUM_GENERATED_CASES"
108+
echo "JAX_ENABLE_X64=$JAX_ENABLE_X64"
109+
echo "JAX_SKIP_SLOW_TESTS=$JAX_SKIP_SLOW_TESTS"
110+
111+
# Set symlink to the bazel executable
112+
bazel_exec=($(ls bazel-*))
113+
ln -s ${bazel_exec} bazel
114+
115+
./bazel test \
116+
--test_env=JAX_NUM_GENERATED_CASES=$JAX_NUM_GENERATED_CASES \
117+
--test_env=JAX_ENABLE_X64=$JAX_ENABLE_X64 \
118+
--test_env=JAX_SKIP_SLOW_TESTS=$JAX_SKIP_SLOW_TESTS \
119+
--test_env=PYTHON_GIL=0 \
120+
--test_env=TSAN_OPTIONS=halt_on_error=1,suppressions=$PWD/.github/workflows/tsan-suppressions.txt \
121+
--test_env=JAX_TEST_NUM_THREADS=8 \
122+
--test_output=errors \
123+
--local_test_jobs=32 \
124+
--test_timeout=600 \
125+
//tests:cpu_tests

0 commit comments

Comments
 (0)