Skip to content

Fixes for 12.0.1 - #806

Merged
maleadt merged 3 commits into
mainfrom
tb/gpuarrays-12.0.1
Oct 7, 2026
Merged

maleadt merged 3 commits into
mainfrom
tb/gpuarrays-12.0.1

Conversation

@maleadt

@maleadt maleadt commented Oct 7, 2026

Copy link
Copy Markdown
Member

Fixes found by the back-end ports, for 12.0.1:

  • Base.mapreducedim! from a PermutedDimsArray was ambiguous with GPUArrays' method for a GPU destination, because Base has methods for permuted sources with specific operators. Prepare the GPUArrays 12 release #804 fixed the same for LinearAlgebra's adjoint and transposed sources, and this extends it to permuted ones, with tests.
  • The new adjoint/transpose reduction test reduced abs2 of full-range Complex{Int16} values, which overflows. Intel's GPU compiler gets that wrong (Wrong results for overflowing Int16 arithmetic in a reduction kernel oneAPI.jl#670), failing oneAPI's CI. The test is about dispatch, so it now uses small values.

Tested with the JLArrays and Array testsuites (reductions/mapreducedim!); the new permuted tests error with the ambiguity without the fix.

Base defines Base.mapreducedim! for PermutedDimsArray sources with specific
operators, which was ambiguous with GPUArrays' method for a GPU destination,
like LinearAlgebra's methods for adjoint and transposed matrices were.
With full-range Complex{Int16} inputs, abs2 wraps around, and Intel's GPU
compiler gets that wrong in AcceleratedKernels' generic reduction kernel,
failing oneAPI's CI. The test is about dispatching from adjoint and transposed
sources, so give it values that don't overflow.
@maleadt
maleadt merged commit bba15c2 into main Oct 7, 2026
15 of 18 checks passed
@maleadt
maleadt deleted the tb/gpuarrays-12.0.1 branch October 7, 2026 18:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant