Hansung Kim
18e3653d31
sgemm_tcore: Increase RF data reuse for WMITER/WNITER
...
... by splitting vx_wmma_load to vx_wmma_load_{a,b} and pulling it
out of the innermost loop.
TODO: there's some duplicate address compute being done in the both
functions.
2024-06-03 21:10:42 -07:00
Hansung Kim
4e723c4655
sgemm_tcore: Support two accumulation reg tiles
2024-06-01 01:12:38 -07:00
Hansung Kim
c8d6c56dd9
sgemm_tcore: Split global DMEM load into a function
2024-05-31 17:37:06 -07:00
Hansung Kim
220ee0aa5e
sgemm_tcore: Unroll around WMITER/WNITER
...
This is within a very tight loop so it's worth unrolling at the risk of
stack spills somewhere else.
2024-05-31 17:35:22 -07:00
Hansung Kim
1e48bad4f9
sgemm_tcore: Fix AS transpose
2024-05-26 13:51:47 -07:00
Hansung Kim
200fd3e08c
sgemm_tcore: Revert to packed smem alloc
2024-05-25 22:47:59 -07:00
Hansung Kim
b892c22f00
sgemm_tcore: Reflect WMITER/WNITER in threadblock size
2024-05-16 23:31:52 -07:00
Hansung Kim
18ecebddc0
sgemm_tcore: Fix round-down error with CORES_PER_CLUSTER
2024-05-16 21:36:24 -07:00
Hansung Kim
78b2a318c1
sgemm_tcore: Implement A transpose for coalesced smem access
2024-05-16 20:22:15 -07:00
Hansung Kim
8f64fae7a7
sgemm_tcore: Addr gen for local_k; add SIMT-only for reference
2024-05-16 14:11:09 -07:00
Hansung Kim
df1aa62916
sgemm_tcore: Add warptiling parameters
...
FIXME: accumulation is done wrong
2024-05-15 15:23:26 -07:00
Hansung Kim
09b23ffe87
sgemm_tg: 1-octet 8-lane kernel
2024-05-13 14:52:33 -07:00
Hansung Kim
d848e88f72
sgemm_tcore: Move C from regF->GMEM directly
2024-05-13 14:00:50 -07:00
Hansung Kim
9e60b1834c
sgemm_tcore: Rewrite with sgemm_Wg parametrization
2024-05-13 13:22:06 -07:00
Hansung Kim
5c298c81df
sgemm_tg: Use reg mapping functions
2024-05-12 22:22:54 -07:00
Hansung Kim
7775830814
Hardcode chipyard device addresses
2024-05-07 16:30:30 -07:00
joshua
5bd25985c6
i kinda forgot most of changes
2024-05-04 23:01:47 -07:00