[Bugfix] hotfix for gptq-marlin non-contiguous error #15374
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
fix #14887 #15386
Hotfix for gptq-marlin non-contiguous error. Previous #15319 only fixed the GPTQ code path and #14946 only fixed the AWQ code path. We should lower the non-contiguous fix into the
ops.gptq_marlin_gemmfunction, sincegptq_marlin_gemmhas been used in multiple code paths, both AWQ and GPTQ.Performance w/ or w/o prefix cache for R1-AWQ model: (TTFT from 13701.38ms -> 1183.58ms, this PR don't downgrade the performance of TTFT)
This PR only acts as a temporary workaround. For performance reasons, the best approach is to make gptq_marlin_gemm support non-contiguous input in the future or carefully manage context_chunk_workspace for MLA (don't fuse nope and pe kv cache workspace into a single Tensor).
@LucasWilkinson @mgoin @robertgshaw2-redhat PTAL ~