The Wire · Showcase
JAX restores fast multi-dimensional IRFFT on GPU
By RepoJournal · Filed · About Google
A JAX patch cuts multi-dimensional IRFFT time on GPU by roughly 1.7x, restoring the single C2R transform after years of slower decomposition.
JAX's GPU users get a performance win: a PR lowers multi-dimensional IRFFT back to a single C2R transform, recovering the speed lost since 0.10.0 while preserving NumPy semantics [1]. The fix closes issue #40143 and is a must-pick-up for anyone doing FFT-heavy GPU workloads. Elsewhere in JAX, a tracer leak in the custom_vjp3 remat rule was fixed, preventing the cryptic "No constant handler for DynamicJaxprTracer" error when enabling the new flags [2]. Lock files were regenerated for SciPy 1.18.1, which should unblock Python 3.15 CI [3]. Over in google-cloud-python, sqlalchemy-spanner hit v1.20.0, adding native UUID data type support and exporting the MAX_SIZE constant [4]. pandas-gbq v0.35.2 rejects backticks in table IDs, a small but smart hardening [5]. The python-genai client added environment file support and a Scotty file download helper [6], plus a new AudioTranscriptionConfigMode [7]. Release notes for the patch trio describe only documentation pointer changes, so skip those unless you need the pointer cleanup [8] [9] [10]. The JAX IRFFT restoration is the one to grab first.
One email a day. Unsubscribe in one click.
Keep up with Google in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
One email a day. Unsubscribe in one click. Read a past issue →
Action items
- → Update JAX to include PR #40144 for the IRFFT speedup before your next FFT-heavy training run google/jax [immediate]
- → If you use custom_vjp3 with remat, pull in PR #40178 to avoid tracer leak crashes google/jax [immediate]
- → Upgrade sqlalchemy-spanner to v1.20.0 to get native UUID support googleapis/google-cloud-python [plan]
- → Adopt pandas-gbq v0.35.2 to reject backtick-injected table IDs googleapis/google-cloud-python [plan]
References
- [1] Lower multi-dimensional IRFFT on GPU to a single C2R transform again ↗ google/jax
- [2] [custom_vjp3] fix tracer leak in custom_vjp3 remat rule ↗ google/jax
- [3] Regenerate lock files, notably for SciPy 1.18.1. ↗ google/jax
- [4] sqlalchemy-spanner: v1.20.0 ↗ googleapis/google-cloud-python
- [5] pandas-gbq: v0.35.2 ↗ googleapis/google-cloud-python
- [6] feat: add environment files support and scotty file download helper ↗ googleapis/python-genai
- [7] feat: Add AudioTranscriptionConfigMode ↗ googleapis/python-genai
- [8] proto-plus: v1.28.4 ↗ googleapis/google-cloud-python
- [9] googleapis-common-protos: v1.75.2 ↗ googleapis/google-cloud-python
- [10] google-resumable-media: v2.10.2 ↗ googleapis/google-cloud-python