UPSTREAM PR #19625: Vulkan Scalar Flash Attention Refactor#1178
Open
UPSTREAM PR #19625: Vulkan Scalar Flash Attention Refactor#1178
Conversation
|
The analysis encountered an error. Please review the Processing Details for more information. |
1 similar comment
|
The analysis encountered an error. Please review the Processing Details for more information. |
9ea4a65 to
c001e9f
Compare
32d504c to
378d110
Compare
|
No meaningful performance changes were detected across 111507 analyzed functions in the following binaries: build.bin.libllama.so, build.bin.llama-tts, build.bin.llama-cvector-generator, build.bin.libmtmd.so, build.bin.llama-tokenize, build.bin.llama-bench, build.bin.libggml-base.so, build.bin.libggml-cpu.so, build.bin.libggml.so, build.bin.llama-gemma3-cli, build.bin.llama-gguf-split, build.bin.llama-llava-cli, build.bin.llama-minicpmv-cli, build.bin.llama-quantize, build.bin.llama-qwen2vl-cli. 🔎 Full breakdown: Loci Inspector. |
13648e6 to
1d064d0
Compare
551dfb5 to
55a969e
Compare
5ac00d6 to
998dd7a
Compare
945fa3a to
0e8e1d6
Compare
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.
Note
Source pull request: ggml-org/llama.cpp#19625
This started out as an attempt to go through the scalar FA version and add proper float16 support to improve AMD and Intel performance and went quite a bit further. @jeffbolznv Sorry about the amount of changes, let me know if there's something I can do to make the review easier. Please also let me know if you have architectural concerns. Flash Attention has so many dimensions and making it work well on so much hardware and models is pretty hard. I had to spend quite a lot of time figuring out and fixing regressions on specific configurations.
AI-generated summary of changes
Scalar Flash Attention Core Optimizations
Row Size Tiering
Vendor-Specific Optimizations
split_k Enhancements
Device Compatibility
Shared Memory Management
Code Path Selection
Shader Compilation
Benchmarks
AMD Radeon Pro VII
AMD 8060S
AMD 8060S (Without Coopmat)
Intel A770
Nvidia RTX 3090 (Coopmat2)
Nvidia RTX 3090 (Coopmat1)
Nvidia RTX 3090 (Without Coopmat)