pytorch/executorch - Open Source PR Review Scorecard

On-device AI across mobile, embedded and edge for PyTorch

C-Rank Grade: S (Elite) - 71/100

External PR Merge Rate: 69%

Response Time: -

First Timer Success: 71%

Frequently Asked Questions

Is pytorch/executorch welcoming to first-time open-source contributors?

pytorch/executorch has a recorded first-timer success rate of 71.2%. Repositories ranked S 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 pytorch/executorch 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 71.2 C-Rank™ score (S 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 71.2 places pytorch/executorch in the S tier.

What is the external contributor pull request merge rate for pytorch/executorch?

The external contributor pull request merge rate for pytorch/executorch is 69.2%, based on public PR activity from non-core contributors.

Are there Good First Issues available in pytorch/executorch?

pytorch/executorch currently has 7 active issue(s) tagged with beginner-friendly labels like "good first issue", "beginner", or "up-for-grabs".

pytorch
pytorch/executorchS•Elite5.1k
GitHub
Back to Explorer
pytorch

pytorch/executorch

5,089
Active (30d)S•Elite(71/100)Python

On-device AI across mobile, embedded and edge for PyTorch

GitHub
Compare••
Jump to:

AI Maintainer Review Guidelines

Review Persona

Strict Quality Architect

Warmth Score
7.2/10
Patience Score
7.7/10
Nitpick Rate
35%

Active Python repository in pytorch/executorch with ongoing community development and issue triage.

Top PR Submission Do's

  • •Ensure code complies with Python style conventions
  • •Keep PRs scoped and well-documented
  • •Include relevant test coverage for changes

Top PR Friction Pitfalls (Don'ts)

  • •Do not submit unlinked PRs without context
  • •Do not break existing automated test suites
  • •Do not mix unrelated refactors with feature work
Response Velocity
-
No reviewer activity recorded

Average Response Latency

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

Merge Efficiency
69.2%
Moderate PR acceptance rate

External Acceptance Rate

Percentage of community pull requests successfully merged into main.

First-Timer Success
71.2%
Strong first-timer PR acceptance rate

First PR Conversion

Rate at which developers submitting their first repository PR succeed.

Active Maintainers
105 core
Highly collaborative maintainer core
Diagnostic Health HUD
69.2%
Merge Gauge
71.2%
1st-Timer
Community Vibe49/100

Embed C-Rank Badge

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

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

Active Good First Issues (5)

View on GitHub

🐛 Describe the bug Summary In exported LFM2 and LFM2.5 models, ShortConv.conv_state (a mutable buffer holding the last two conv inputs) is never cleared when a new sequence starts at input_pos = 0. After TextLLMRunner.reset() (Python), LlmModule.resetContext() (Android) or TextLLMRunner::warmup(), the next conversation starts from the previous conversation's convolution state. Continuing a conversation at the current position is not affected. Expected: after reset(), a prompt gives the same output as on a freshly loaded model. Actual: the output depends on what ran before the reset. To reproduce Environment: executorch==1.5.1 and torch==2.14.0 from pip. Model: a public export, lfm_2_5_350m_xnnpack_8da4w.pte (sha256 e8c38e0d933932b02dddbcf92df813045899d0f71bf5346dbceecf5c4078f05d), and its tokenizer.json (sha256 2221c71b5dce048a8abae62843b92bd7deec13cc153f95fa6e3327a47b79a7da). 1. Module level (python module_repro.py lfm_2_5_350m_xnnpack_8da4w.pte) import sys import torch from exec

📅 Opened Sep 29, 2026💬 2 comments
Quality: 25/100Contribute

Enable the native Kev example on the WebGPU backend, extending the XNNPACK and MLX support added in #23023. Kev runs prefill followed by pointer-head scoring, with an immutable prefix snapshot reused across question batches. Start with the existing C++ Module API and a native Dawn build, without Python at inference. Use the WebGPU backend guide and operator tests as starting points. Qwen3.5 MoE's GatedDeltaNet implementation provides a reference for GDN math and state layouts. Coordinate shared export/lowering work with the Vulkan issue, #23098. Work to cover: Audit Kev's prefill and score graphs against WebGPU runtime support. Add missing WGSL kernels and lowering support, including GDN, with focused backend regression tests. Export success alone is insufficient: WebGPUPartitioner shares Vulkan's frontend, whose operator coverage is broader. Add a WebGPU export option and CMake linkage for the existing kev_runner and kev_benchmark. Respect the current mutually exclusive Vulkan/WebGPU

📅 Opened Sep 23, 2026💬 2 comments
Quality: 50/100Contribute

Enable the native Kev example on the Vulkan backend, extending the XNNPACK and MLX support added in #23023. Kev runs prefill followed by pointer-head scoring, with an immutable prefix snapshot reused across question batches. The goal is to support this workflow through the existing C++ API on Vulkan-capable GPUs, without Python at inference. Start with Kev's model/export code, the Vulkan export example, and the Vulkan backend. Qwen3.5 MoE's GatedDeltaNet implementation provides a reference for GDN math and state layouts; Vulkan will need its own lowering or shader support where coverage is missing. Work to cover: Identify operator and dynamic-shape gaps in Kev's prefill and score graphs. Add the required Vulkan support, including GDN, with focused backend regression tests. A small GDN parity test is a useful first step. Add a Vulkan export option and CMake linkage so the existing kev_runner and kev_benchmark run the exported model through Module. Preserve system_one, explicit prefill/

📅 Opened Sep 23, 2026💬 2 comments
Quality: 50/100Contribute

Enable the native Kev example on NVIDIA GPUs through ExecuTorch's AOTI CUDA backend. The example landed in #23023 with XNNPACK and MLX support. Kev runs prefill followed by a pointer head over option-boundary hidden states. A prefix snapshot is reused across question batches. The goal is to run this same workflow through the existing C++ API, without Python at inference. Use Qwen3.5 MoE as the primary reference for CUDA export, native loading, and Gated DeltaNet (GDN). Its chunked GDN kernel and backend tests are useful starting points. Work to cover: Add a CUDA export option for Kev's prefill and score methods using CudaPartitioner. Reuse the existing GDN prefill kernel, adapting layouts, gate/scaling conventions, and explicit initial/final state to Kev. Wire up aoti_cuda_backend in the example's CMake build and load the .pte plus CUDA delegate .ptd data through Module. Handle device memory and synchronization when retaining prefix snapshots and reading scores on the host. Preserve s

📅 Opened Sep 23, 2026💬 2 comments
Quality: 50/100Contribute

Problem The Apple and pybind presets use xcrun -sdk macosx --find metal. On current Xcode releases this can locate a launcher even when the separately installed Metal Toolchain component is unavailable, so configuration enables MLX and fails later during compilation. The documentation correction is part of #22620. The preset behavior change is intentionally excluded from that documentation-only PR. Proposed change Probe xcrun -sdk macosx metal --version in both presets and update the fallback message to point to xcodebuild -downloadComponent MetalToolchain. Test plan Configure on Apple silicon with Xcode and the Metal Toolchain installed; verify MLX remains enabled. Configure with Xcode but without the Metal Toolchain; verify MLX is disabled cleanly. Run Apple pybind and MLX build CI. cc @larryliu0820 @GregoryComer @metascroy

📅 Opened Sep 10, 2026💬 1 comment
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 pytorch/executorch

When evaluating whether to contribute to pytorch/executorch, 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 pytorch/executorch acknowledge new external contributions in approximately -. Out of all submitted pull requests from non-core authors in the last 180-day window, 69.2% were successfully merged into the primary branch.

Frequently Asked Questions - Contributing to pytorch/executorch

01

Is pytorch/executorch welcoming to first-time open-source contributors?

pytorch/executorch has a recorded first-timer success rate of 71.2%. Repositories ranked Elite 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 71.2 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 71.2 places pytorch/executorch in the Elite tier.

04

What is the external contributor pull request merge rate for pytorch/executorch?

The external pull request merge rate is 69.2%. 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 pytorch/executorch?

Yes, pytorch/executorch currently has 7 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 pytorch/executorch 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.