-
Notifications
You must be signed in to change notification settings - Fork 185
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[FP6-LLM] Port splitK map from DeepSpeed #283
Conversation
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/ao/283
Note: Links to docs will display an error until the docs builds have been completed. ✅ No FailuresAs of commit b89ec10 with merge base 42c2376 (): This comment was automatically generated by Dr. CI and updates every 15 minutes. |
@@ -111,6 +112,143 @@ def from_tc_float6_e3m2(tensor: Tensor, M: int, N: int, dtype: torch.dtype = tor | |||
return from_float6_e3m2(tensor_fp6, no_bit_packing=True, dtype=dtype) | |||
|
|||
|
|||
# https://github.com/microsoft/DeepSpeed/blob/3a3a6db3332e339cc9fd94efd4982f6d60635a3d/deepspeed/inference/v2/kernels/core_ops/cuda_linear/cuda_linear.py | |||
_SPLIT_K_MAP = [ | |||
{ # tokens: [1, 64] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
n00b q: what is meant by token counts here?
Also can these values be autotuned? I don't necesarily wanna merge in something that's only fast on A100
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it's the batch size. Yea, it will be great if we can autotune CUDA kernel also.
* aoti runner test * change to cpu
https://github.com/microsoft/DeepSpeed/blob/3a3a6db3332e339cc9fd94efd4982f6d60635a3d/deepspeed/inference/v2/kernels/core_ops/cuda_linear/cuda_linear.py
Optimal splitK for a given
(batch_size, out_dim)
pair on A100-80G.