The Wire · Showcase
JAX SPEEDS UP SNAKE, DROPS ROCM WHEEL LOOKUP
By RepoJournal · Filed · About Google
JAX's planar_snake is now up to 10% faster for power-of-two tiles, and the team is killing a painfully slow ROCm wheel discovery path.
JAX shipped a targeted performance win overnight: the `planar_snake` kernel now uses a `cond` instead of a `select` when `tile_width` is a power-of-two, cutting latency by about 10% in the common case [1]. The same PR also improves speed in most other configurations, so it's a free win for anyone running snake-shaped workloads. Separately, JAX is ripping out dynamic ROCm wheel discovery, a code path that calls `pkgutil.iter_modules()` and can stall for seconds on machines with many installed packages [2]. The maintainers call the mechanism "not really needed" since they no longer support unknown ROCm versions with old releases. A second, near-identical copy of that change landed in PR form, likely the same fix being tracked in both internal and external pipelines [3]. Also in flight: a test fix that stops an unsupported-gather test from accidentally using a gather that's now supported, which could otherwise mask future breakage [4]. All told, 4 commits and 3 PRs across google/jax in the last 24 hours. Nothing here is a security patch, but the snake optimization is the kind of drop-in speedup you want in your next benchmark run.
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
- → Pull in the planar_snake optimization if you hit snake layouts with power-of-two tile widths google/jax [plan]
- → Watch the ROCm wheel discovery removal for any custom build scripts that rely on it google/jax [monitor]
References
- [1] Optimize `planar_snake` calculation. ↗ google/jax
- [2] Remove dynamic discovery of unknown rocm wheels. google/jax
- [3] Remove dynamic discovery of unknown rocm wheels. ↗ google/jax
- [4] Fix unsupported gather test not to use a (newly supported) gather. google/jax