Files
llama.cpp/ggml/src/ggml-vulkan/vulkan-shaders
Jeff Bolz de5627910d vulkan: Optimize argsort (#15354)
- Launch an appropriate number of invocations (next larger power of two).
32 invocations is common and the barrier is much cheaper there.
- Specialize for "needs bounds checking" vs not.
- Make the code less branchy and [[unroll]] the loops. In the final code,
I see no branches inside the main loop (only predicated stores) when
needs_bounds_check is false.
- Always sort ascending, then apply the ascending vs descending option when
doing the final stores to memory.
- Copy the values into shared memory, makes them slightly cheaper to access.
2025-08-17 10:41:45 +02:00
..
2025-08-05 22:10:36 +03:00
2025-08-17 10:41:45 +02:00
2025-05-02 20:54:30 +03:00
2025-07-01 10:14:21 +02:00
2025-08-05 22:10:36 +03:00
2025-08-16 11:48:22 -05:00
2025-07-09 18:16:12 +02:00
2025-08-05 22:10:36 +03:00
2025-08-05 22:10:36 +03:00
2025-08-05 22:10:36 +03:00
2025-07-12 14:25:44 +03:00
2025-08-16 11:48:22 -05:00