### What this PR does / why we need it? Optimize DeepSeekOCR2 RelPosAttention and CustomQwen2Decoder and add doc for DeepSeekOCR2.md ### Does this PR introduce _any_ user-facing change? ### How was this patch tested? - vllm 0.18.0 - vllm-ascend main 1. _create_custom_4d_mask during 141ms49us620ns --> _create_npu_optimized_mask during 1ms227us780ns 2. convd2d : 27ms --> matmul <1ms 3. relposattention:sdpa->prompt_flash_attention --------- Signed-off-by: Wangbei25 <wangbei41@huawie.com> Signed-off-by: Wangbei25 <wangbei41@huawei.com> Co-authored-by: Wangbei25 <wangbei41@huawie.com>
53 lines
2.4 KiB
Python
53 lines
2.4 KiB
Python
#
|
|
# Copyright (c) 2025 Huawei Technologies Co., Ltd. All Rights Reserved.
|
|
# This file is a part of the vllm-ascend project.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
#
|
|
|
|
from vllm.triton_utils import HAS_TRITON
|
|
|
|
if HAS_TRITON:
|
|
import vllm_ascend.patch.worker.patch_triton
|
|
import vllm_ascend.patch.worker.patch_v2.patch_triton # noqa
|
|
|
|
|
|
# isort: off
|
|
import vllm_ascend.patch.worker.patch_weight_utils # noqa
|
|
import vllm_ascend.patch.platform.patch_sched_yield # noqa
|
|
import vllm_ascend.patch.worker.patch_unquantized_gemm # noqa
|
|
import vllm_ascend.patch.worker.patch_bert # noqa
|
|
import vllm_ascend.patch.worker.patch_distributed # noqa
|
|
import vllm_ascend.patch.worker.patch_minimax_m2 # noqa
|
|
import vllm_ascend.patch.worker.patch_minimax_m2_linear_attn # noqa
|
|
import vllm_ascend.patch.worker.patch_mamba_utils # noqa
|
|
import vllm_ascend.patch.worker.patch_multimodal_merge # noqa
|
|
import vllm_ascend.patch.worker.patch_gdn_attn # noqa
|
|
import vllm_ascend.patch.worker.patch_qwen3_next # noqa
|
|
import vllm_ascend.patch.worker.patch_qwen3_next_mtp # noqa
|
|
import vllm_ascend.patch.worker.patch_qwen3_5 # noqa
|
|
import vllm_ascend.patch.worker.patch_rejection_sampler # noqa
|
|
import vllm_ascend.patch.worker.patch_v2.patch_eagle # noqa
|
|
import vllm_ascend.patch.worker.patch_v2.patch_uva # noqa
|
|
import vllm_ascend.patch.worker.patch_huanyuan_vl # noqa
|
|
import vllm_ascend.patch.worker.patch_routed_experts_capturer # noqa
|
|
import vllm_ascend.patch.worker.patch_npugraph_ex_triton # noqa
|
|
import vllm_ascend.patch.worker.patch_kimi_k25 # noqa
|
|
import vllm_ascend.patch.worker.patch_draft_quarot # noqa
|
|
import vllm_ascend.patch.worker.patch_cudagraph # noqa
|
|
import vllm_ascend.patch.worker.patch_deepseek_mtp # noqa
|
|
import vllm_ascend.patch.worker.patch_v2.patch_input_batch # noqa
|
|
import vllm_ascend.patch.worker.patch_v2.patch_model_state # noqa
|
|
import vllm_ascend.patch.worker.patch_v2.patch_block_table # noqa
|
|
import vllm_ascend.patch.worker.patch_deepencoder2 # noqa
|