-
Notifications
You must be signed in to change notification settings - Fork 12.3k
vulkan: fix rms_norm+mul fusion #14545
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
The fused operation was grabbing the epsilon value from the wrong place. Add an env var to disable fusion. Add some missing checks for supported shapes/types. Handle fused rms_norm+mul in check_results.
These changes fix both Mistral 7b at Q8 and the spaces issue with Mistral 3.2 at Q3_K_L. Thank you! |
Does it also fix the other model issues you mentioned (Mamba something)? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thank you for the fix.
Unfortunately, I've already deleted that model since it wasn't very stable in general (doesn't stop properly on short responses even on very low temperature), regardless of backend. I'll have to look at a better Mamba-based model to test it properly. |
* origin/master: CUDA: add bf16 and i32 to getrows (ggml-org#14529) vulkan: increase LOAD_VEC_A to 8 (IQ1/IQ2) or 4 (IQ3) (ggml-org#14485) vulkan: fix rms_norm+mul fusion (ggml-org#14545) vulkan: Handle updated FA dim2/3 definition (ggml-org#14518) server : fix assistant prefilling when content is an array (ggml-org#14360) opencl: add GELU_ERF (ggml-org#14476) eval-callback : check for empty input (ggml-org#14539) test-backend-ops: add support for specifying output format (ggml-org#14368) metal : disable fast math in all quantize kernels (ggml-org#14528) batch : add optional for sequential equal split (ggml-org#14511) graph : prepare for 4D mask (ggml-org#14515) batch : add n_used count (ggml-org#14512) CANN: Replace aclrtMemsetSync with aclnnInplaceZero operator (ggml-org#14002) ggml : implement GEGLU_ERF and GEGLU_QUICK ops (ggml-org#14445)
The fused operation was grabbing the epsilon value from the wrong place. Add an env var to disable fusion. Add some missing checks for supported shapes/types. Handle fused rms_norm+mul in check_results.
The fused operation was grabbing the epsilon value from the wrong place. Add an env var to disable fusion. Add some missing checks for supported shapes/types. Handle fused rms_norm+mul in check_results.
The fused operation was grabbing the epsilon value from the wrong place.
Add an env var to disable fusion.
Add some missing checks for supported shapes/types.
Handle fused rms_norm+mul in check_results.
Fixes #14540.