Faster fallback matrix multiplication - #773
Merged
Merged
Conversation
Member
Author
|
Metal failures will probably be resolved by rerunning the tests after JuliaGPU/Metal.jl#939 is merged. oneAPI failures seem to be a bug uncovered by the new tests introduced by 7e8909d |
Member
|
The early return zeroed C whenever A or B was empty, but for K == 0 the result is β*C. The tiled kernel already handles that (no tiles to process), so only skip the launch when C itself is empty. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Both computed the same thing, element [i, j] of op(X); only the call sites differ in which index is the contraction one. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
A fallback kernel does not need a tunable here; hardcode the one-row padding that avoids shared-memory bank conflicts. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
It is the tile dimension, not an upper bound. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
It already unwraps the operands via wrapper_char/_unwrap, instead of indexing through the wrapper with 'N' flags. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The gemm tests only used 4×4 inputs, which never exercise partial tiles or an inner dimension spanning several tiles, i.e. exactly the failure mode of a tiled kernel. Use 33×17×5 (and n=33 for Symmetric/Hermitian, which was a tile-aligned 128) so every dimension has a partial tile; the test load does not increase. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Like #590 but from a non-fork branch so it can be stacked see the original PR for the discussion
Closes #590