Qianfeng Zhang
|
fcd41a6f39
|
Re-arrange the codes section for using sched_group_barrier
|
2025-07-21 08:22:18 +00:00 |
|
Qianfeng Zhang
|
906ab84d6c
|
Fix in using sched_group_barrier()
|
2025-07-21 08:21:35 +00:00 |
|
Qianfeng Zhang
|
acb6cd89d9
|
Move store_tile() caled before the current iteration
|
2025-07-21 08:20:52 +00:00 |
|
Qianfeng Zhang
|
fed1474e4f
|
Revert "Disable support of hdim64 amnd hdim256 for quick compiling and testing"
This reverts commit ed062f93e2.
|
2025-07-17 09:00:41 +00:00 |
|
Qianfeng Zhang
|
ed062f93e2
|
Disable support of hdim64 amnd hdim256 for quick compiling and testing
|
2025-07-17 09:00:15 +00:00 |
|
Qianfeng Zhang
|
f0c8dca9bf
|
Fix bug in generate_instances.py and re-generate the instances
|
2025-07-17 08:37:09 +00:00 |
|
Qianfeng Zhang
|
0306a1e6ab
|
Re-org the kernel parameters in HstuAttentionFwdBatchModeBaseKargs and HstuAttentionFwdJaggModeBaseKargs
|
2025-07-17 04:51:16 +00:00 |
|
Qianfeng Zhang
|
fdd9c117d4
|
Remove num_target from HstuBlockMask class member since it overlaps the meaning of max_uih_len
|
2025-07-15 16:21:40 +00:00 |
|
Qianfeng Zhang
|
c01695597e
|
Fix the calculation of number of instructions used by sched_group_barrier
|
2025-07-15 09:47:35 +00:00 |
|
Qianfeng Zhang
|
0206b3442a
|
[Performance] use iglp compiler instruction to tune the codes around gemm0 for window_size > 0 situation
|
2025-07-14 16:02:42 +00:00 |
|
Qianfeng Zhang
|
9171b35751
|
Add including of block_dropout.hpp in the hstu kernel to avoid potential compiling failure
|
2025-07-11 00:15:53 +00:00 |
|
Qianfeng Zhang
|
6825618dca
|
Moving code-lines in hstu pipeline
|
2025-07-07 09:50:11 +00:00 |
|
Qianfeng Zhang
|
8d30e46ba5
|
Remove using i_loop and num_loops since seqlen_k_curr and seqlen_k_end is enough
|
2025-07-06 15:46:56 +00:00 |
|
Qianfeng Zhang
|
5451912526
|
Let causal == 0 cases to do IsFullTileInsideMask() checking before calling IsTokenPairInsideMask()
|
2025-06-26 10:25:24 +00:00 |
|
Qianfeng Zhang
|
3c300d3069
|
Tiny movement in the code lines of the pipeline
|
2025-06-26 10:24:50 +00:00 |
|
Qianfeng Zhang
|
60d8ffb6cf
|
Use two work-groups per compute-unit for scheduling the kernel
|
2025-06-26 10:24:25 +00:00 |
|
Qianfeng Zhang
|
dc7e62a658
|
Simplify the codes in all host/device IsTokenPairInsideMask() trying to reduce branching
|
2025-06-23 14:23:53 +00:00 |
|
Qianfeng Zhang
|
63a47d7ec5
|
Fix masking for min_full_attn_seqlen > 0 situation
|
2025-06-22 16:27:27 +00:00 |
|
Qianfeng Zhang
|
c87a217475
|
Update to test_ck_hstu_mask.sh and test_pytorch_hstu_mask.py to align their testings
|
2025-06-22 16:26:53 +00:00 |
|
Qianfeng Zhang
|
463a19859a
|
Completely remove the dependency to include/ck_tile/ops/fmha/ops headers
|
2025-06-22 11:58:26 +00:00 |
|
Qianfeng Zhang
|
4fa6474254
|
Fix in using KV LdsBuffers to avoid un-expected over-writting that causes un-deterministic results
|
2025-06-21 13:52:32 +00:00 |
|
Qianfeng Zhang
|
a5f24d7470
|
Change while() do to do while() for the main loop to let the compiler to generate more elegant codes
|
2025-06-21 13:51:42 +00:00 |
|
Qianfeng Zhang
|
f9caae2d8b
|
Use batch dim as first grid dim by default and replace env ASSUME_LEAST_VARIED_SEQLEN by ASSUME_HIGHLY_VARIED_SEQLEN
|
2025-06-18 16:02:34 +00:00 |
|
Qianfeng Zhang
|
09ac14604c
|
Align the -seqlens=xxx in the mattn0_full0 and mattn256_full256 scripts with the required benchmarks
|
2025-06-18 16:02:04 +00:00 |
|
root
|
9e62359b59
|
Tiny fix in hstu attention IsFullTileInsideMask()
|
2025-06-18 16:01:40 +00:00 |
|
Qianfeng Zhang
|
08886e99d5
|
Enable BATCH_AS_FIRST_GRID_DIM grid-scheduling and use ASSUME_LEAST_VARIED_SEQLEN for building control
|
2025-06-10 15:44:29 +00:00 |
|
Qianfeng Zhang
|
4632d30cc0
|
Improve the VDramTileDistribution and VLds layout for better device loading and reduce bank-conflict
|
2025-06-08 13:25:57 +00:00 |
|
Qianfeng Zhang
|
84eb9adc71
|
Move GetKPackV() and GetAlignmentV() out of ck_tile fmha to hstu pipeline default policy for better visibility
|
2025-06-07 15:01:19 +00:00 |
|
Qianfeng Zhang
|
b2db644dcd
|
Add assert(contextual_seqlen >= 0) in example
|
2025-06-06 15:56:04 +00:00 |
|
Qianfeng Zhang
|
d7930cd541
|
Update IsFulleTileInsideMask() for kUseLocal is true situtation
|
2025-06-06 15:55:26 +00:00 |
|
Qianfeng Zhang
|
9e6a24010a
|
Move all test and bench scripts to folder scripts
|
2025-06-06 08:22:38 +00:00 |
|
Qianfeng Zhang
|
2bb59dff0a
|
Add two scripts
|
2025-06-06 08:15:25 +00:00 |
|
Qianfeng Zhang
|
9582ae2dff
|
Move dividing by max_seqlen to end of Gemm1 loop in the reference hstu-attention codes
|
2025-05-31 06:22:54 +00:00 |
|
Qianfeng Zhang
|
bec35abafe
|
Tune the settings for hdim-256
|
2025-05-30 08:51:49 +00:00 |
|
Qianfeng Zhang
|
832747c58d
|
Add example parameter alpha to ease the testing
|
2025-05-30 08:51:24 +00:00 |
|
Qianfeng Zhang
|
781cba355a
|
Convert P to fp16/bf16 before doing second gemm in reference hstu implementation
|
2025-05-29 01:07:04 +00:00 |
|
Qianfeng Zhang
|
36a0f2020c
|
not-critical updates in example and block_masking codes
|
2025-05-29 01:06:32 +00:00 |
|
Qianfeng Zhang
|
68a5ab8ff8
|
Add init_qkv and dump_output example parameters for easier debugging
|
2025-05-29 01:05:49 +00:00 |
|
Qianfeng Zhang
|
10c35125d2
|
Add example parameter max_seqlen and max_target
|
2025-05-27 14:43:43 +00:00 |
|
Qianfeng Zhang
|
c9e19351c7
|
Update to the method for calculating max_seqlen in the example
|
2025-05-27 10:38:52 +00:00 |
|
Qianfeng Zhang
|
dc0977faad
|
Use NRepetitions2DEpilogue for outputing o_acc tile
|
2025-05-26 14:43:30 +00:00 |
|
Qianfeng Zhang
|
81f7b139e0
|
Use LDS to in-directly load Q-tile to enable dwordx4 loading and avoid cachelines wasting
|
2025-05-22 09:49:11 +00:00 |
|
Qianfeng Zhang
|
a1346aaf3e
|
Update the reference hstu to not do fp32 to fp16/bf16 conversion before P@V gemm
|
2025-05-20 07:53:25 +00:00 |
|
Qianfeng Zhang
|
0a8ea6bd02
|
Adjust the threshold values for fp16/bf16 in the example
|
2025-05-20 07:52:37 +00:00 |
|
Qianfeng Zhang
|
29cf1610f1
|
Enable RTN fp32 to bf16 conversion by adding compiler option in CMakeLists.txt
|
2025-05-20 07:52:01 +00:00 |
|
Qianfeng Zhang
|
fac03abbda
|
Change do-while main-loop to while-do and remove early exiting check
|
2025-05-19 15:39:31 +00:00 |
|
Qianfeng Zhang
|
14ab6f154d
|
Adjust the codes before the main-loop
|
2025-05-19 13:59:57 +00:00 |
|
Qianfeng Zhang
|
f411d676f2
|
Move k_tile loading and v_tile loading earlier in the loop
|
2025-05-19 13:59:24 +00:00 |
|
Qianfeng Zhang
|
902b1c645c
|
Move k_tile loading in the loop earlier
|
2025-05-19 13:58:43 +00:00 |
|
Qianfeng Zhang
|
f582c21418
|
Replace s_acc and pcomp tile array by single tile object for simplification
|
2025-05-19 13:57:11 +00:00 |
|