update batch kernel condition (#12408)

This commit is contained in:
Yishuo Wang 2024-11-15 13:47:05 +08:00 committed by GitHub
parent 6c5e8fc70c
commit 3d5fbf2069
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -362,16 +362,19 @@ def use_batch_forward(x: torch.Tensor, qtype: int, output_len: int):
batch_size = x.shape[0]
hard_condition = (
x.dtype in [torch.float, torch.half]
and batch_size <= 48
and (
x.shape[1] % 128 == 0 and qtype in [SYM_INT4]
(
qtype in [SYM_INT4, ASYM_INT4, FP8E5, FP8E4]
and x.shape[1] % 128 == 0
)
or (
x.shape[1] % 256 == 0
and output_len % 32 == 0
qtype in [SYM_INT8, FP4, FP6, Q4_K, Q6_K]
and device in ["arc", "flex", "pvc", "mtl"]
and qtype in [ASYM_INT4, SYM_INT8, FP4, FP8E5, FP6, FP8E4, Q4_K, Q6_K]
and x.shape[1] % 256 == 0
and output_len % 32 == 0
)
)
and batch_size <= 48
)
if hard_condition:
return (