diff --git a/vllm-v0.6.2/vllm_mlu/vllm_mlu/model_executor/layers/linear.py b/vllm-v0.6.2/vllm_mlu/vllm_mlu/model_executor/layers/linear.py index ad7120e..5a6f50d 100644 --- a/vllm-v0.6.2/vllm_mlu/vllm_mlu/model_executor/layers/linear.py +++ b/vllm-v0.6.2/vllm_mlu/vllm_mlu/model_executor/layers/linear.py @@ -26,9 +26,9 @@ def vllm__module_executor__layers__linear__UnquantizedLinearMethod__apply( beta = 1.0 residual = residual.view(-1, residual.shape[-1]) res_shape = x.shape[0:-1] + (layer.weight.shape[0], ) + # MLU matmul requires matching dtypes; cast input to weight dtype if x.dtype != layer.weight.dtype: - logger.error("[DEBUG-DTYPE] matmul dtype mismatch: x.dtype=%s, weight.dtype=%s, x.shape=%s, weight.shape=%s, layer=%s", - x.dtype, layer.weight.dtype, x.shape, layer.weight.shape, type(layer).__name__) + x = x.to(layer.weight.dtype) return mlu_ops.matmul(x.view(-1, x.shape[-1]), layer.weight, bias, residual, 'none', 1.0, beta).view(res_shape)