vllm-project/vllm-ascend - Open Source PR Review Scorecard

Community maintained hardware plugin for vLLM on Huawei Ascend

C-Rank Grade: A (Welcoming) - 68/100

External PR Merge Rate: 47%

Response Time: -

First Timer Success: 43%

Frequently Asked Questions

Is vllm-project/vllm-ascend welcoming to first-time open-source contributors?

vllm-project/vllm-ascend has a recorded first-timer success rate of 43.1%. Repositories ranked A typically provide actionable feedback during code reviews and actively nurture new community contributors.

How fast can I expect code review feedback on my pull request?

Maintainers in vllm-project/vllm-ascend respond to incoming external pull requests in approximately 0.0 hours on average. Keeping PRs focused on single tasks and ensuring tests pass helps maintainers review faster.

What does the 68.3 C-Rank™ score (A Tier) represent?

The C-Rank™ system evaluates GitHub projects on a 0–100 scale using real data: PR merge rates, review turnaround time, active maintainer presence, and first-time contributor success. A score of 68.3 places vllm-project/vllm-ascend in the A tier.

What is the external contributor pull request merge rate for vllm-project/vllm-ascend?

The external contributor pull request merge rate for vllm-project/vllm-ascend is 46.9%, based on public PR activity from non-core contributors.

Are there Good First Issues available in vllm-project/vllm-ascend?

vllm-project/vllm-ascend currently has 75 active issue(s) tagged with beginner-friendly labels like "good first issue", "beginner", or "up-for-grabs".

vllm-project
vllm-project/vllm-ascendA•Welcoming2.9k
GitHub
Back to Explorer
vllm-project

vllm-project/vllm-ascend

2,941
Active (30d)A•Welcoming(68/100)Python

Community maintained hardware plugin for vLLM on Huawei Ascend

GitHub
Compare••
Jump to:

AI Maintainer Review Guidelines

Review Persona

Constructive Code Reviewer

Warmth Score
7.4/10
Patience Score
7.8/10
Nitpick Rate
33%

Balanced & professional review environment in vllm-project/vllm-ascend. Maintains strict focus on technical quality and test standards.

Top PR Submission Do's

  • •Add unit tests with >80% coverage for modified code paths
  • •Run repository linter and code formatters locally before pushing
  • •Link relevant GitHub issue ID in PR description pre-flight checklist

Top PR Friction Pitfalls (Don'ts)

  • •Do not submit unlinked PRs without referencing an existing issue
  • •Do not mix refactoring and feature logic into a single commit
  • •Do not ping maintainers repeatedly within 24 hours of opening
Response Velocity
-
No reviewer activity recorded

Average Response Latency

Tracks hours until a maintainer leaves a review, comment, or PR response.

Merge Efficiency
46.9%
Moderate PR acceptance rate

External Acceptance Rate

Percentage of community pull requests successfully merged into main.

First-Timer Success
43.1%
Accepts new contributor PRs

First PR Conversion

Rate at which developers submitting their first repository PR succeed.

Active Maintainers
413 core
Highly collaborative maintainer core
Diagnostic Health HUD
46.9%
Merge Gauge
43.1%
1st-Timer
Community Vibe32/100

Embed C-Rank Badge

Show contributors that your repository actively reviews and merges external pull requests.

GetMerged C-Rank badge for vllm-project/vllm-ascend
[![GetMerged C-Rank](https://getmerged.abhishekco.de/api/badge/vllm-project/vllm-ascend)](https://getmerged.abhishekco.de/vllm-project/vllm-ascend?utm_source=github&utm_medium=badge)

Active Good First Issues (5)

View on GitHub

背景 MRV2 结构化输出(structured output / grammar)路径中,_apply_grammar_bitmask_kernel 将 grammar bitmask 应用到 logits 上,把被屏蔽位置置为 -inf。Ascend 侧实现位于 vllm_ascend/worker/v2/structured_outputs.py,经 patch/worker/patch_v2/patch_triton.py 替换 vllm-core GPU 版本。 当前实现注释明确指出:上游 GPU 版 BLOCK_SIZE=8192 在 Ascend NPU 上会溢出 UB(Unified Buffer),而缩小 BLOCK_SIZE 又使 grid 不稳定,故保留 BLOCK_SIZE=8192 并以 BLOCK_SIZE_SUB=1024 子分块循环处理。kernel 内已有 # TODO: Optimize the kernel performance with NPU profiling data.。 存在以下可优化点: for sub_offset in tl.range(0, BLOCK_SIZE, BLOCK_SIZE_SUB) 子分块循环是 UB 溢出绕过方案,可结合 NPU UB 容量重新设计分块; bitmask 解包(packed >> arange & 1)与 apply(置 -inf)可融合 / 向量化优化; grid 与 BLOCK_SIZE 选择需 profiling 标定。 任务 优化 _apply_grammar_bitmask_

📅 Opened Aug 13, 2026💬 2 comments
Quality: 50/100Contribute

背景 MRV2 采样路径中,bincount 构建 prompt 的二进制 bitmask(prompt_bin_mask,标记 prompt 中出现过的 token)与输出 token 计数(output_bin_counts),供 apply_penalties 使用。Ascend 侧实现位于 vllm_ascend/worker/v2/sample/penalties.py。 当前实现为 Triton kernel _bincount_kernel,grid (num_tokens, num_blocks),BLOCK_SIZE=1024。kernel 通过 tl.atomic_or 写 bitmask(token_id // 32 为字索引,token_id % 32 为位),通过 tl.atomic_add 累加 output_bin_counts。两个原子操作在高并发下存在竞争。 存在以下可优化点: atomic_or(bitmask)与 atomic_add(counts)原子操作竞争; BLOCK_SIZE=1024 固定; 每个 token 独立遍历 prompt,重复扫描可合并。 任务 优化 bincount 在 Ascend NPU 上的性能。 路径:vllm_ascend/worker/v2/sample/penalties.py(_bincount_kernel / bincount) 方向:降低原子竞争(分块规约 / 私有副本合并)、BLOCK_SIZE 自适应、减少重复

📅 Opened Aug 13, 2026💬 5 comments
Quality: 50/100Contribute

背景 MRV2 采样路径中,apply_penalties 对 logits 施加 repetition / frequency / presence 惩罚。Ascend 侧实现位于 vllm_ascend/worker/v2/sample/penalties.py,经 patch/worker/patch_v2/patch_triton.py 替换 vllm-core GPU 版本。 当前实现为 Triton kernel _penalties_kernel,grid (num_tokens, num_blocks),BLOCK_SIZE=4096 分块遍历词表。kernel 内对每个 token 有一段顺序循环 for prev_pos in tl.range(pos) 累加前序 draft token 的 bin count(O(pos) 每程序),再施加三类惩罚。受限于 "NPU 不支持链式 or" 做了 use_penalty = use_penalty or ... 拆分。 存在以下可优化点: for prev_pos in tl.range(pos) 顺序累加 draft token 计数,长序列 / 多 draft token 下串行开销大; BLOCK_SIZE=4096 固定; 早期返回(无惩罚)逻辑可进一步减少无效 launch。 任务 优化 apply_penalties 在 Ascend NPU 上的性能。 路径:vllm_ascend/worker/v2/sample/penalties.py(_penalties_kernel / apply_penal

📅 Opened Aug 13, 2026💬 3 comments
Quality: 50/100Contribute

背景 MRV2(Model Runner V2)采样路径中,compute_token_logprobs 负责对采样 token 计算 log-softmax 概率。Ascend 侧实现位于 vllm_ascend/worker/v2/sample/logprob.py,通过 vllm_ascend/patch/worker/patch_v2/patch_triton.py 替换 vllm-core 的 GPU 版本(vllm/v1/worker/gpu/sample/logprob.py)。 当前实现为 Triton kernel _topk_log_softmax_kernel:每个 request 启动一个 program,以固定 BLOCK_SIZE=12944 分块遍历整个词表,两趟计算(max + sum exp)得到 log-softmax,再 gather 指定 token_ids 的 logprob。配套的 compute_topk_logprobs 中 _ranks_kernel 计算 token rank(遍历词表统计 logits > 选中值的个数)。 存在以下可优化点: BLOCK_SIZE=12944 硬编码,对不同词表大小 / batch shape 非最优; log-softmax 两趟遍历词表,未使用 online softmax 融合; _ranks_kernel 用 int32 累加 (logits > x) 的逐块比较,长词表下开销大; multibuffer=False、grid (batch_size,) 未充分

📅 Opened Aug 13, 2026💬 3 comments
Quality: 50/100Contribute

背景 tests/ut/distributed/ascend_store/ 下已有 test_config_data.py / test_pool_worker.py / test_pool_scheduler.py / test_kv_transfer.py / test_coordinator.py 等,但对高风险路径的覆盖仍不均衡。异常路径、GVA 批量元数据、multi-group 失败恢复、异步 load/save 状态机仍需补强。 待补强路径与期望场景: KVCacheTransferThread.run 线程异常分支:线程内 I/O 异常是否被正确捕获、是否传播到主流程、是否被静默吞掉 _alloc_gvas_for_save / _prepare_load_gvas GVA 元数据批量:批量分配的部分失败回滚、group_block_hashes 边界(空 / 单 / 满) LookupKeyClient.lookup 及 ZMQ lookup server:server 无响应 / 连接断开 / 超长 payload 的编解码异常 layerwise _handle_request 同步等待与失败传播:gate.wait 超时、load 失败后 attention 是否被错误放行、失败标记是否一致 相关代码路径:vllm_ascend/distributed/kv_transfer/kv_pool/ascend_store。 任务 优

📅 Opened Aug 13, 2026💬 2 comments
Quality: 50/100Contribute
Looking for more Python beginner tasks?Explore Python GFI

Contributor Community Vibe Feedback

Rate what actually matters after opening a pull request here.

Have you contributed to this repo?

Rate your first-hand PR experience (review speed, maintainer responsiveness, and onboarding ease) to help other contributors.

3 ratings required
Maintainer helpfulness
Review speed
Beginner friendliness

Contributor Compatibility & Review Speed Analysis for vllm-project/vllm-ascend

When evaluating whether to contribute to vllm-project/vllm-ascend, response velocity and maintainer engagement are crucial. GetMerged continuously tracks pull request trajectories, first-comment latency, and code review rounds to help developers avoid submitting pull requests to backlogged repositories.

Currently, maintainers of vllm-project/vllm-ascend acknowledge new external contributions in approximately -. Out of all submitted pull requests from non-core authors in the last 180-day window, 46.9% were successfully merged into the primary branch.

Frequently Asked Questions - Contributing to vllm-project/vllm-ascend

01

Is vllm-project/vllm-ascend welcoming to first-time open-source contributors?

vllm-project/vllm-ascend has a recorded first-timer success rate of 43.1%. Repositories ranked Welcoming typically provide actionable feedback during code reviews and actively nurture new community contributors.

02

How fast can I expect code review feedback on my pull request?

The initial maintainer response time averages ~-. Keeping PRs scoped to single concerns and ensuring CI checks succeed will optimize review turnaround.

03

What does the 68.3 C-Rank™ score represent?

The C-Rank™ index scores repositories on a 0 to 100 scale using an objective formula: external PR merge rates, initial response speed, active maintainer count, and first-time contributor retention. A score of 68.3 places vllm-project/vllm-ascend in the Welcoming tier.

04

What is the external contributor pull request merge rate for vllm-project/vllm-ascend?

The external pull request merge rate is 46.9%. GetMerged isolates non-core community contributions so external developers get an accurate benchmark of PR acceptance probability.

05

Are there beginner Good First Issues open in vllm-project/vllm-ascend?

Yes, vllm-project/vllm-ascend currently has 75 active issue(s) tagged with beginner-friendly labels. You can inspect these directly from the repository issues tab.

GetMerged C-Rank™ Indexing Standard

All metrics displayed for vllm-project/vllm-ascend are automatically retrieved via the public GitHub API and recalculated daily. Insider pull requests submitted by repository owners or organization members are excluded from merge rate calculations to preserve objective external contributor statistics.