The Wire · Showcase
JAX ADDS STRONGER RANDOM NUMBER GENERATORS WHILE CLOUD PYTHON CUTS LEGACY SUPPORT
By RepoJournal · Filed · About Google
JAX shipped two new PRNG implementations with larger key and counter spaces, giving you better statistical properties for large-scale sampling - right as the Google Cloud Python suite drops Python 3.7 through 3.9 entirely.
The JAX team added philox4x32 and threefry4x32 PRNG implementations [1] [2], both offering 128-bit counter spaces compared to their smaller predecessors. Philox4x32 uses 64-bit keys with operations that accelerators can lower more efficiently, while threefry4x32 pushes to 128-bit keys for contexts generating many samples. These hit `jax.random.key` directly with the `impl` parameter, so you can switch without changing calling code. On the GPU side, XLA folded autotuning logic into native and block-level emitters [3], tightening compilation and reducing redundant kernel selection. Meanwhile, Google Cloud Python is officially ending support for Python 3.7, 3.8, and 3.9 [4] [5] [8], updating lower bounds across Storage and Spanner with 3.10 as the new floor. The Storage team also optimized zonal system tests for concurrency and speed [6], while Spanner fixed idempotent database restore retries by catching AlreadyExists and validating backup state [7]. Python-genai added Gemini 3.5 Flash to model options [9], ready for immediate use.
Action items
- → Verify your JAX random seeding works with new philox4x32 or threefry4x32 if you generate high-volume samples google/jax [plan]
- → Pin Python 3.10+ for google-cloud-storage and google-cloud-spanner before next dependency update googleapis/google-cloud-python [plan]
- → Update any restore database tests in Spanner to handle AlreadyExists gracefully on retry googleapis/google-cloud-python [monitor]
References
- [1] Add philox4x32 PRNG impl ↗ google/jax
- [2] Add threefry4x32 PRNG impl ↗ google/jax
- [3] [XLA:GPU] Fold should_autotune logic into the native & block-level emitters. ↗ google/jax
- [4] feat(storage): drop Python 3.7-3.9 support and regenerate ↗ googleapis/google-cloud-python
- [5] feat(spanner): drop Python 3.7-3.9 support and regenerate ↗ googleapis/google-cloud-python
- [6] chore(storage): optimize zonal system tests CloudBuild and make concurrency-safe (#17171) googleapis/google-cloud-python
- [7] test(spanner): handle AlreadyExists idempotently on restore test retries ↗ googleapis/google-cloud-python
- [8] feat: regenerate asset w/ dependencies using generator v1.32.0 ↗ googleapis/google-cloud-python
- [9] feat: Add Gemini 3.5 Flash model to options ↗ googleapis/python-genai
FAQ
- What changed in Google on May 20, 2026?
- JAX shipped two new PRNG implementations with larger key and counter spaces, giving you better statistical properties for large-scale sampling - right as the Google Cloud Python suite drops Python 3.7 through 3.9 entirely.
- What should Google teams do about it?
- Verify your JAX random seeding works with new philox4x32 or threefry4x32 if you generate high-volume samples • Pin Python 3.10+ for google-cloud-storage and google-cloud-spanner before next dependency update • Update any restore database tests in Spanner to handle AlreadyExists gracefully on retry
- Which Google repositories shipped on May 20, 2026?
- google/jax, googleapis/google-cloud-python, googleapis/python-genai