mirror of
https://github.com/ROCm/composable_kernel.git
synced 2026-05-23 06:16:12 +00:00
[CK][CK Tile] Fix dram step for KM/KN layouts in V1 pipeline (#5470)
## Motivation Fix v1 pipeline for KM/KN layouts by passing correct step for dram tile window. ## Technical Details - Fix dram step for KM/KN layouts in V1 pipeline - Disable instances which use more threads than warp size in continous dim (not supported in ck tile yet) - Use 1x1 specialization for explicit gemm - Use two stage for vectorsize =1 and sizeof(datatype) ==2 - remove not needed check sinze GetVectorSizeA/B check if vector size is fixed ## Test Plan test_grouped_convnd_bwd_weight_tile ## Test Result passed locally ## Submission Checklist - [x] Look over the contributing guidelines at https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests. AICK-966
This commit is contained in:
@@ -317,7 +317,7 @@ def parse_bwd_weight_instances(instances, problem_name):
|
||||
gemm_params = device_op_name = instance.split("<")[2].split(">")[1].split(",")
|
||||
args = [param.split(":")[1].strip() for param in gemm_params]
|
||||
|
||||
spec = "Default"
|
||||
spec = "Filter1x1Stride1Pad0"
|
||||
block_size = int(args[0])
|
||||
|
||||
mnk_per_block = args[1].split("x")
|
||||
@@ -450,6 +450,13 @@ def parse_bwd_weight_instances(instances, problem_name):
|
||||
if pipeline_version == "V6":
|
||||
print(f"Skipping instance {instance_id} with V6 since it's not supported yet.")
|
||||
continue
|
||||
if m_per_block > (warp_size * a_scalar_per_vector) or n_per_block > (warp_size * b_scalar_per_vector):
|
||||
print(f"Skipping instance {instance_id} with multiple warps per continous tile dim since it's not supported yet.")
|
||||
continue
|
||||
|
||||
if is_explicit_gemm:
|
||||
if dtype != "float" and c_scalar_per_vector % 2 != 0:
|
||||
is_two_stage_instance = True
|
||||
|
||||
conv = ConvInstanceTemplateParams(
|
||||
spec,
|
||||
|
||||
Reference in New Issue
Block a user