Weekly Project News

Archives
Subscribe

Weekly GitHub Report for Pytorch: July 07, 2026 - July 14, 2026 (00:18:26)

Weekly GitHub Report for Pytorch

Thank you for subscribing to our weekly newsletter! Each week, we deliver a comprehensive summary of your GitHub project's latest activity right to your inbox, including an overview of your project's issues, pull requests, contributors, and commit activity.


Table of Contents

  • I. News
    • 1.1. Recent Version Releases
    • 1.2. Other Noteworthy Updates
  • II. Issues
    • 2.1. Top 5 Active Issues
    • 2.2. Top 5 Stale Issues
    • 2.3. Open Issues
    • 2.4. Closed Issues
    • 2.5. Issue Discussion Insights
  • III. Pull Requests
    • 3.1. Open Pull Requests
    • 3.2. Closed Pull Requests
    • 3.3. Pull Request Discussion Insights
  • IV. Contributors
    • 4.1. Contributors

I. News

1.1 Recent Version Releases:

The current version of this repository is v2.6.0

1.2 Version Information:

Released on January 29, 2025, PyTorch 2.6 introduces significant enhancements including torch.compile support for Python 3.13, a new dynamic compilation control API torch.compiler.set_stance, and improved AOTInductor packaging and ABI compatibility. Notable highlights also include FP16 support on X86 CPUs, expanded Intel GPU support, FlexAttention for X86 CPUs targeting LLMs, and a backward-incompatible security improvement flipping the default of torch.load to weights_only=True, alongside the deprecation of official Conda package publishing.

II. Issues

2.1 Top 5 Active Issues:

We consider active issues to be issues that that have been commented on most frequently within the last week. Bot comments are omitted.

  1. [MODULE: CRASH] [MODULE: CPU] [TRIAGED] [MODULE: COMPLEX] [ONCALL: PT2] [MODULE: INDUCTOR] [BOT-TRIAGED] [Inductor] AssertionError: len(index) == len(stride) in ir.py when using torch.compile(mode="max-autotune") on CPU BMM/GEMM: This issue reports a crash triggered by an AssertionError in the Inductor compiler backend when using torch.compile(mode="max-autotune") on CPU for a function involving complex numbers and batched matrix multiplication. The error occurs specifically in the C++ backend's BMM/GEMM template generation where an assertion fails due to a mismatch between the lengths of index and stride, and the problem appears to be autotune-choice dependent, with some backend kernels avoiding the crash while others trigger it.

    • Comments reveal that the bug is reproducible on certain nightly builds depending on the autotune kernel selected, with some users confirming the issue persists while others report it fixed on newer commits; the discussion includes detailed environment info, attempts to reproduce, and notes that forcing the problematic backend path is challenging on some CPUs.
    • Number of comments this week: 6
  2. [MODULE: LOGGING] [MODULE: TESTS] [TRIAGED] [SKIPPED] [ONCALL: PT2] [MODULE: XPU] [BOT-TRIAGED] DISABLED test_optimizer_non_static_param (main.LoggingTests): This issue concerns a disabled test named test_optimizer_non_static_param in the LoggingTests suite, which was failing on the main branch specifically on XPU platforms. The failure was traced to an outdated decorator that was removed in a submitted PR, resulting in the test passing successfully on the latest PyTorch nightly builds and various hardware environments, though some related CI failures remain due to unrelated pre-existing issues.

    • The comments document the request for help, confirmation of the fix via a PR that removed an obsolete decorator, successful validation on multiple hardware setups including PVC, and ongoing investigation of unrelated CI failures; overall, the test now passes consistently in fresh environments and the fix is confirmed by CI runs.
    • Number of comments this week: 6
  3. [TRIAGED] [MODULE: PYTHON ARRAY API] [MODULE: PYTHON FRONTEND] asarray: device does not propagate from input to output after set_default_device: This issue reports that the torch.asarray function does not correctly propagate the device of an input tensor to the output tensor when the default device has been set using torch.set_default_device. According to both PyTorch documentation and the Array API standard, if device=None is passed, the output tensor should reside on the same device as the input tensor, but currently it falls back to the default device, causing unexpected device transfers.

    • The comments clarify that the behavior is currently expected due to how set_default_device interacts with asarray, but this contradicts the documented and standard-specified behavior of device propagation. The discussion explores the consistency of this behavior across similar tensor creation functions, the implications of changing it (including potential backward compatibility breaks), and the importance of aligning asarray with the Array API standard, concluding that the current behavior is a bug that should be fixed despite some internal inconsistencies in PyTorch.
    • Number of comments this week: 5
  4. [MODULE: TESTS] [TRIAGED] [SKIPPED] [ONCALL: PT2] [MODULE: INDUCTOR] [MODULE: XPU] [BOT-TRIAGED] DISABLED test_emulate_precision_casts_preserves_explicit_precision_cast_float16 (main.CudaReproTests): This issue concerns a disabled test for the PyTorch XPU backend that was failing due to a SYCL library version mismatch between PyTorch and Triton-XPU, causing segmentation faults when oneAPI 2025.3 was sourced. The investigation revealed that avoiding sourcing oneAPI or upgrading to oneAPI 2026.0, which aligns SYCL versions, resolves the problem and allows the test to pass successfully, with validation confirming the fix on multiple hardware setups.

    • The comments detail the root cause analysis identifying an ABI mismatch from different SYCL versions, provide a workaround to not source oneAPI or upgrade it, and confirm through multiple re-validations and fresh environment tests that the issue is resolved with the recommended setup changes.
    • Number of comments this week: 5
  5. [TRIAGE REVIEW] [MODULE: CORRECTNESS (SILENT)] [MODULE: MPS] [BOT-TRIAGED] [MPS] non_blocking CPU-to-MPS copy can read released source storage and silently corrupt data: This issue describes a bug where using Tensor.to("mps", non_blocking=True) can silently produce incorrect values if the pageable CPU source tensor is released before the MPS stream is synchronized, leading to data corruption without mutating the source tensor. The expected behavior is that the MPS backend should either retain the CPU source storage until the asynchronous copy completes or block the copy if it cannot safely manage the source lifetime, as releasing the source tensor should not silently alter the destination tensor.

    • The comments show that the issue was reproducible and under investigation, with tracing of the CPU-to-MPS copy path to understand source storage lifetime management; later testing confirmed the bug no longer reproduces on the latest nightly build, suggesting it may have been fixed, and an offer was made to identify the specific commit that resolved the problem.
    • Number of comments this week: 5

2.2 Top 5 Stale Issues:

We consider stale issues to be issues that has had no activity within the last 30 days. The team should work together to get these issues resolved and closed as soon as possible.

As of our latest update, there are no stale issues for the project this week.

2.3 Open Issues

This section lists, groups, and then summarizes issues that were created within the last week in the repository.

Issues Opened This Week: 90

Summarized Issues:

  • Timeout and Capacity Issues in CI Jobs: Several CI jobs experience chronic timeouts and capacity limitations, causing long runtimes and cancellations rather than test failures. These issues affect shards in periodic tests and b200 jobs in microbenchmark workflows, indicating systemic resource or workload management problems.
    • issues/189075, issues/189077, issues/189164
  • PrivateUse1 Device and Backend Support Enhancements: Multiple sub-RFCs propose refactoring device identity queries, Dynamo tracing, and Inductor codegen to support PrivateUse1 devices and out-of-tree backends via registry-based interfaces. These changes aim to replace hardcoded device lists with extensible registries for improved backend integration and dynamic device handling.
    • issues/189135, issues/189136, issues/189137, issues/189138
  • Inductor Backend Performance and Correctness Regressions: Several issues report performance regressions and correctness bugs in the Inductor backend, including layout optimization failures on convolution backward, cache size misconfiguration affecting autotuning, convolution fusion regressions, and incorrect sum reduction for non-contiguous inputs. These problems degrade performance and cause numerical errors in various workloads.
    • issues/189144, issues/189239, issues/189401, issues/189488
  • CUDA Kernel Illegal Memory Access and Overflow Bugs: Multiple CUDA kernels suffer from illegal memory reads or writes caused by integer overflows or null pointer dereferences when handling large inputs or edge cases. These bugs lead to crashes or out-of-bounds accesses in kernels such as max-pooling, histogram, im2col, embedding backward, LU solve, CTC loss backward, and moving average min/max.
    • issues/189664, issues/189666, issues/189667, issues/189668, issues/189669, issues/189670, issues/189671
  • ROC Platform Test Failures and Disabled Tests: Numerous tests are disabled on the ROCm platform (gfx1100 / Navi31) due to consistent failures, affecting tests related to block size, split cumulative sums, large strided reductions, max/min bool operations, and vmap dot decompositions. These failures impact the main branch and require platform-specific attention.
    • issues/189706, issues/189707, issues/189708, issues/189709, issues/189710, issues/189711
  • Security Vulnerabilities in Pickling and Deserialization: Several issues highlight security concerns where unsafe deserialization occurs due to raw pickle.load usage without proper hardening, asymmetrical blocklists allowing dangerous code execution, and allowlisting list subclasses that re-enable overridden methods. These vulnerabilities risk remote code execution despite intended restrictions.
    • issues/189308, issues/189445, issues/189446
  • Graph Cache and Compilation Cache Stability Issues: Problems with graph cache stability arise from unpicklable inputs like ProcessGroup causing cache bypass, and torch.compile fails to reuse cache effectively at scale due to embedded process group names in traced graphs. These issues lead to excessive recompilation and cache misses in distributed training.
    • issues/189330, [issues/189541](https://github.com/issues/189541]
  • Deadlocks and Hang Issues in CUDA and Inductor: Deadlocks occur due to missing synchronization in all-reduce operations across multiple CUDA streams and incorrect reordering of communication ops in Inductor's simple_overlap pass. Additionally, stale lock files cause indefinite hangs during compilation, impacting workflow stability.
    • issues/189228, issues/189245, [issues/189454](https://github.com/issues/189454]
  • Performance Regressions in CPU Operator Benchmarks: Significant slowdowns are reported in CPU operator benchmarks, including 3-5x slower transcendental unary ops, 3-4x and ~700x slowdowns in quantization operators, and 70-130x slowdowns in embedding operations. Some regressions may be measurement artifacts but require investigation.
    • issues/189279, issues/189280, issues/189281, issues/189282, issues/189283
  • Bugs in Artifact Upload and Download Processes: Bugs in CI artifact handling include uploading logs instead of JSON test reports due to wrong file paths and downloading artifacts from mismatched workflow attempts because of incorrect filtering logic. These cause incorrect artifact storage and processing errors in CI tooling.
    • issues/189118, issues/189157, [issues/189615](https://github.com/issues/189615]
  • Crashes and Assertion Failures in CUDA Allocator and Graph Replay: Crashes occur from internal assertion failures in the CUDA caching allocator after long runs, and replaying CUDA graphs with deeply unrolled recurrent modules causes segmentation faults due to node count limits. These issues affect stability in large-scale or long-running workloads.
    • issues/189126, [issues/189150](https://github.com/issues/189150]
  • Incorrect Results and Numerical Errors on Specific Hardware: Bugs cause incorrect outputs such as garbled images on AMD GPUs with ROCm, silent corruption in MPS linear layers with large batch sizes, and silent data corruption during non-blocking MPS tensor copies. These hardware-specific issues degrade correctness without explicit errors.
    • issues/189375, issues/189495, [issues/189690](https://github.com/issues/189690]
  • Proposals for New Features and API Enhancements: Proposals include adding build profiling instrumentation, a CustomLoggerRegistry for profiler trace export, a new symmetric padding mode, high-precision mode flags for torch.compile, and new ctx API methods for autograd.Function to declare gradient dtypes. These aim to improve observability, extensibility, and numerical precision.
    • issues/189078, issues/189098, issues/189236, issues/189334, [issues/189633](https://github.com/issues/189633]
  • Documentation and Test Maintenance Issues: Documentation examples incorrectly show int32 indices instead of int64 for sparse CSR tensors, and a test is proposed to ensure .diff files remain in sync with upstream adapted tests. Additionally, persistent dead URLs cause nightly lint failures, indicating maintenance needs.
    • issues/189392, issues/189607, [issues/189557](https://github.com/issues/189557]
  • Build and Dependency Failures: Build failures occur in the inductor-pallas-tpu project due to missing headers, and runtime errors arise from mismatched cuBLASLt versions in CI causing missing functions on H100. These issues require dependency updates or build configuration fixes.
    • issues/189716, [issues/189719](https://github.com/issues/189719]
  • Miscellaneous Bugs in PyTorch Core and Extensions: Other bugs include a misleading warning in register_full_backward_pre_hook, a bug in complex64 tensor subtraction with aoti_compile_and_package, a bug in torch.ldexp causing illegal memory access on fresh CUDA devices, and a bug in nn.functional.threshold failing on unsigned integers with newer NumPy versions.
    • issues/189093, issues/189189, issues/189567, [issues/189267](https://github.com/issues/189267]

2.4 Closed Issues

This section lists, groups, and then summarizes issues that were closed within the last week in the repository. This section also links the associated pull requests if applicable.

Issues Closed This Week: 127

Summarized Issues:

  • ONNX Export Failures and Limitations: Multiple issues report failures or incorrect behavior when exporting PyTorch models to ONNX format due to unsupported operators, incorrect input handling, or bugs in symbolic implementations. These problems include unsupported operator parameters, missing symbolic methods, incorrect attribute settings, and errors triggered by specific input types or model structures, leading to export failures or runtime errors in ONNX Runtime.
  • issues/55144, issues/85113, issues/86261, issues/87864, issues/95613, issues/96996, issues/113755, issues/115537, issues/119363, issues/121098, issues/122864, issues/124716, issues/126618, issues/147973, issues/159072, issues/168048, issues/185195, issues/186080, issues/186594, issues/189225
  • ONNX Opset and Symbolic Support Enhancements: Some issues focus on adding or tracking support for newer ONNX opsets and missing symbolic method implementations to improve compatibility and functionality during ONNX export. These efforts include adding support for opset 18 and 19/20, as well as fixing stride mismatches and other symbolic operator bugs.
  • issues/100561, issues/119534, issues/183713
  • PyTorch Dynamo and torch.compile Export Issues: Several issues describe failures or unexpected errors when using PyTorch Dynamo or torch.compile with ONNX export or model compilation, including unsupported operations, assertion errors, segmentation faults, and runtime errors related to symbolic shape guards or backend incompatibilities. These problems hinder the seamless use of Dynamo and compiled models with ONNX or specific backends.
  • issues/97499, issues/113755, issues/121098, issues/122864, issues/168048, issues/186080, issues/188970, issues/189271
  • Inductor Compiler Bugs and Backend Issues: Multiple reports highlight bugs and limitations in the Inductor compiler backend, including incorrect numerical outputs, internal errors during lowering, memory safety issues, and challenges with inplace operations or dynamic slicing. These issues affect model correctness and compilation stability, especially for complex or dynamic tensor operations.
  • issues/102870, issues/135089, issues/183259, issues/185702, issues/189271, issues/189518
  • Memory Safety and Illegal Memory Access: Several issues report memory safety bugs including illegal memory writes, out-of-bounds reads, and atomic operation errors in CUDA kernels or distributed operations. These bugs cause crashes, data corruption, or segmentation faults during backward passes or asynchronous operations, posing risks to stability and correctness.
  • issues/142834, issues/182064, issues/188655, issues/188957
  • Build and Compilation Failures: Some issues describe build failures caused by incompatible flags, missing dependencies, or architecture-specific problems, including conflicts with CUDA flags, sysconf usage on ppc64le, and vendored library path issues on ROCm. These failures prevent successful compilation or import of PyTorch in certain environments.
  • issues/126804, issues/127078, issues/188561
  • Backend-Specific Numerical and Functional Discrepancies: Reports include incorrect results or inconsistent behavior on specific backends such as MPS, CUDA, or XPU, including wrong gradients, output mismatches, and differing handling of special values like infinities or NaNs. These discrepancies affect model correctness and reproducibility across devices.
  • issues/175189, issues/187263, issues/187332, issues/188048, issues/189134, issues/189243
  • Test Failures and Flakiness on Specific Platforms: Several issues document flaky or consistently failing tests on platforms like XPU, Windows CI, or macOS, often requiring test disabling or fixes to decorators and guards. These failures impact test suite reliability and coverage.
  • issues/188757, issues/188790, issues/189409, issues/189510, issues/189511, issues/189514, issues/189661
  • Documentation and API Improvements: Some issues request enhancements to documentation or API behavior, including clarifications on function behavior, adding examples, or stabilizing accelerator RNG APIs to improve user understanding and consistency.
  • issues/113724, issues/123800, issues/184883, issues/189384, issues/189520
  • Release and Security Updates: A few issues track release management tasks, security vulnerability fixes, and dependency updates to ensure stable and secure PyTorch releases.
  • issues/186934, issues/179340, issues/188696
  • Performance and Compilation Speed Optimizations: Some issues propose or report optimizations to reduce compilation time or runtime overhead, including refactoring code generation and profiling improvements for kernel launches and hot paths.
  • issues/127863, issues/177655, issues/177978
  • Crash and Segmentation Fault Debugging: Multiple issues describe crashes or segmentation faults triggered by specific operations, device interactions, or compilation modes, often requiring detailed investigation and fixes to prevent hard failures.
  • issues/160399, issues/163033, issues/188355, [issues/188970](https://github.com/pytorch/pytorch/issues/188970], issues/189342
  • Miscellaneous Bugs and Feature Requests: Other issues cover a variety of bugs such as incorrect function signatures, missing decorators, incorrect tensor device assignments, and requests for new features or API changes.
  • issues/126759, issues/151311, issues/153535, issues/169073, issues/189106, issues/189532

2.5 Issue Discussion Insights

This section will analyze the tone and sentiment of discussions within this project's open and closed issues that occurred within the past week. It aims to identify potentially heated exchanges and to maintain a constructive project environment.

Based on our analysis, there are no instances of toxic discussions in the project's open or closed issues from the past week.


III. Pull Requests

3.1 Open Pull Requests

This section provides a summary of pull requests that were opened in the repository over the past week. The top three pull requests with the highest number of commits are highlighted as 'key' pull requests. Other pull requests are grouped based on similar characteristics for easier analysis. Up to 25 pull requests are displayed in this section, while any remaining pull requests beyond this limit are omitted for brevity.

Pull Requests Opened This Week: 374

Key Open Pull Requests

1. [DO NOT MERGE][ROCm] Use torch.version.hip to detect ROCm when /opt/rocm is absent: This pull request improves ROCm detection in PyTorch by using torch.version.hip to identify ROCm environments when the traditional /opt/rocm path is absent, particularly addressing issues with TheRock ROCm wheels, and includes various related CI, dependency loading, and test skip enhancements to ensure compatibility and robustness across different ROCm setups and versions.

  • URL: pull/189229
  • Associated Commits: c785b, 0ab9a, 385b3, 62c77, 6df26, c2e3a, 2050e, be3ec, 5527d, 8939d, 46766, dfe06, 3f4f5, a7c9d, ca482, 26ad7, 13c93, bc137, 7e519, c9cb6, 83c9c, b3daa, 41781, 3cec8, 8b023

2. [precompile] Add dynamic shapes to torch.compiler.precompile: This pull request adds opt-in support for dynamic (unbacked) shapes to torch.compiler.precompile by capturing user-marked dimensions as symbolic integers to enable a single compiled artifact to handle varying runtime sizes, fixes a crash in the _resolve_fake_mode function related to symbolic tracing, and restores deferred test coverage for device-generic numerics, subclass/DTensor, and standalone-process execution.

  • URL: pull/189165
  • Associated Commits: cb985, deb06, f0089, 59c1e, 72acc, f1620, 884d9, 8f292, 48584, ea151, a5a02, ccbad, c992c, 1eb52, 7c49f, d36f0, 22269, 80d55, 3618a, 4021d, 76af6, 1ba48, ed089

3. Support multiple pools in cudagraph_trees: This pull request is a work-in-progress implementation that extends the cudagraph_trees component to support multiple CUDA memory pools (MemPools) for capture-time allocations, enabling the mode="reduce-overhead" feature by managing the full lifecycle of one or more user-registered pools across streams and improving memory management flexibility and efficiency in PyTorch's CUDA graph capture system.

  • URL: pull/189230
  • Associated Commits: d4e82, 52a43, 24944, 21158, 4bbf3, edc89, 1f58b, 78b94, 14bb0, d66ab, a1f92, 6b9cc, f93a6, 23b2b, d0e5a, 4bdaa, f9425, ae4aa, 96410, db3fe

Other Open Pull Requests

  • Inductor and torch.compiler.precompile enhancements: Multiple pull requests introduce and improve the torch.compiler.precompile API, enabling ahead-of-time compilation of computation graphs with support for eager and inductor backends. These changes include making the inductor backend the default for precompile, adding kernel caching and input stride specialization, and providing comprehensive user-facing documentation.
    • pull/189621, pull/189620, pull/189622
  • Performance optimizations and kernel improvements: Several pull requests focus on performance improvements including the introduction of gemv kernels with optional benchmarking, an opt-in polyhedral optimization feature with fusion for Triton, and an optimized AMD ROCm layer normalization backward kernel that dynamically selects kernel implementations based on tensor size. These changes aim to improve efficiency and performance across different backends and workloads.
    • pull/189628, pull/189460, pull/189405
  • CuptiMonitor refactoring and profiling improvements: Pull requests refactor the CuptiMonitor to reduce GIL contention by moving flush calls to the native decode thread and convert it into a process-wide singleton configured via a global function. Additionally, the PyTorch profiler is updated to use Kineto's typed metadata fields, replacing inefficient string-based JSON parsing for better compatibility and maintainability.
    • pull/189083, pull/189185, pull/189442
  • Build and CI pipeline consolidation: One pull request consolidates the continuous delivery wheel-build pipelines for Linux, Windows, and macOS into a unified directory structure, centralizes helper scripts, unifies numpy version pinning, refactors environment setup helpers, and adds comprehensive documentation. This improves maintainability and fixes latent bugs across platforms.
    • pull/189275
  • Memory allocation and CUDA synchronization fixes: Pull requests modify symmetric memory allocation layouts to prevent signal pad pollution and reapply removal of CUDA synchronization in torch.combinations to enhance torch.compile support. These changes optimize memory handling and synchronization behavior for better stability and performance.
    • pull/189088, pull/189163
  • XPU pinning and bridge registration fixes: Multiple fixes and updates address XPU pinning and bridge registration on Windows and Linux, including linking xpu_hal functions, updating CMake configurations, applying clang-format, making optional types portable, advancing XPU pin commits, registering Windows XPU bridge helpers, and improving CI build configurations.
    • pull/189396
  • Singleton configuration and error handling improvements: Refactoring efforts include making CuptiMonitor a singleton with a global configure function and fixing bugs in constant-fold fallback and attribute handling by adding guards and raising appropriate exceptions. These changes improve configuration consistency and error robustness.
    • pull/189185, pull/189074, pull/189091, pull/189092
  • Dynamic scale reduction caching and deterministic fusion fixes: Improvements to Inductor include enabling caching for dynamic scale reduction-expanded single-configuration autotuning and fixing non-deterministic gradient computation in slice_scatter backward fusion by forcing realization under deterministic settings. These fixes enhance performance and ensure deterministic behavior.
    • pull/189124, pull/189129
  • Windows CUDA memory allocation support: A pull request enables the expandable_segments:True feature for single-process CUDA memory allocation on Windows by porting the c10::cuda driver API to support Windows-specific NVML dynamic loading and adapting related code paths, while disabling IPC handle export/import for stability.
    • pull/189128
  • PyTorch dynamo VariableTracker and iterator method migrations: Several pull requests migrate VariableTracker classes and iterator methods from custom call_method implementations into declarative tp_methods tables, simplifying method dispatch and preserving original behaviors. This consolidation improves maintainability and consistency in the dynamo project.
    • pull/189434, pull/189435, pull/189508

3.2 Closed Pull Requests

This section provides a summary of pull requests that were closed in the repository over the past week. The top three pull requests with the highest number of commits are highlighted as 'key' pull requests. Other pull requests are grouped based on similar characteristics for easier analysis. Up to 25 pull requests are displayed in this section, while any remaining pull requests beyond this limit are omitted for brevity.

Pull Requests Closed This Week: 484

Key Closed Pull Requests

1. POC flex gemm: This pull request prototypes a GEMM epilogue fusion higher-order operation along with the necessary Dynamo, ProxyTensor, and Inductor lowering and code generation paths to enable fusion of pointwise epilogues into various GEMM-family operations, adds support for multiple backends including TRITON, QUACK, and CUTEDSL, provides convenience wrappers for common GEMM variants, and includes targeted tests and profiling tools to validate and benchmark the fusion functionality.

  • URL: pull/181963
  • Associated Commits: 95c80, e2190, ca80b, 9a419, aa0ba, 4c66a, 5a82f, bec53, 74e6b, d27eb, 05b25, d24a2, 65568, 58bdc, c972d, decdd, cb9d4, 6b9d4, 7b0c5, a3cd2, c90c9, 14777, 728d8, 71458, 1647c, 3fc38, 28984, 51952, eadcb, a08f6, 9a5bc, 0f770, 27878, 5631f, 2b49a, 81384, aeb54, d1f7a, 185e1, 628c3, ca006, 1867e, 70196, 313c6, 24361, c9e05, dd5b9, 09165, 2cd0b, 74509, 1b4a8, 98d21, a9dff, 5e8ca, b3492, 026de, e5c3e, ce275, c85ba, 6baaa, 1ab4f, 9c0a3, 668b8, 5b338, 8172f, 8b069, 12119, 7d664, a7438, 624bf, 79c31, a7306, c0b80, 7339f, f5df1, 986e3, 19d4f, 22feb, b0a13, 3b4ae, 60019, a95ec, 36f49, 058d0, 9883c, 6e319, bbbf5, ff051, baa6c, d93a5, 94fa4, 5adf2, 5b708, 1910f, de1c7, dc5ec, b4427, 66853, b5b75, cc8aa, c00d2, f455e, 3b955, a27e8, 22043, 7a72b, dbf1a, 81479, 28fbc, 1f579, 0f4ea, 5cd07, ec112, b5413, af644, 6ac23, 2f675, 0a464, 91049, 62bbe, ec043, 63bc0, a4d0f, e19b1, d334c
  • Associated Commits: 95c80, e2190, ca80b, 9a419, aa0ba, 4c66a, 5a82f, bec53, 74e6b, d27eb, 05b25, d24a2, 65568, 58bdc, c972d, decdd, cb9d4, 6b9d4, 7b0c5, a3cd2, c90c9, 14777, 728d8, 71458, 1647c, 3fc38, 28984, 51952, eadcb, a08f6, 9a5bc, 0f770, 27878, 5631f, 2b49a, 81384, aeb54, d1f7a, 185e1, 628c3, ca006, 1867e, 70196, 313c6, 24361, c9e05, dd5b9, 09165, 2cd0b, 74509, 1b4a8, 98d21, a9dff, 5e8ca, b3492, 026de, e5c3e, ce275, c85ba, 6baaa, 1ab4f, 9c0a3, 668b8, 5b338, 8172f, 8b069, 12119, 7d664, a7438, 624bf, 79c31, a7306, c0b80, 7339f, f5df1, 986e3, 19d4f, 22feb, b0a13, 3b4ae, 60019, a95ec, 36f49, 058d0, 9883c, 6e319, bbbf5, ff051, baa6c, d93a5, 94fa4, 5adf2, 5b708, 1910f, de1c7, dc5ec, b4427, 66853, b5b75, cc8aa, c00d2, f455e, 3b955, a27e8, 22043, 7a72b, dbf1a, 81479, 28fbc, 1f579, 0f4ea, 5cd07, ec112, b5413, af644, 6ac23, 2f675, 0a464, 91049, 62bbe, ec043, 63bc0, a4d0f, e19b1, d334c

2. Support rebuild-on-import for scikit-build-core editable installs: This pull request introduces an opt-in feature for scikit-build-core editable installs that enables automatic rebuild of the PyTorch project on the first import within a process, allowing source code changes to be picked up without requiring an explicit reinstall, while ensuring compatibility with pytest capture and honoring build parallelism settings.

  • URL: pull/180249
  • Associated Commits: ce6bc, e8891, 3b9bc, c90a3, 3356e, dce82, fe1d7, 7a46c, 9b7d6, 0dd45, cb78d, df682, 66039, f595f, 3cbaf, bb4a3, 7943b, 24753, d50e5, 5855c, 6f36a, fbb77, b5bbb, b3849, eef9d, e87ef, 525ad, db0eb, a9b8d, f1db5, 1b409, b5467, d5fe2, 716da, e2e3b, 348c0, 8f352, b21de, de3e7, 7e08a, 04bd2, eaac3, d946a, aeb38, 04fc4, f118f, aadbf, 827d7, f2676, d15d2, 12d8d, 16825, 76997, de74e, a5dec, c0198, 2a4e6, d0968, 5ee5a, 2140e, 4a0ce, c6d98, 95d0c, ac74b, 67a51, 06d1d
  • Associated Commits: ce6bc, e8891, 3b9bc, c90a3, 3356e, dce82, fe1d7, 7a46c, 9b7d6, 0dd45, cb78d, df682, 66039, f595f, 3cbaf, bb4a3, 7943b, 24753, d50e5, 5855c, 6f36a, fbb77, b5bbb, b3849, eef9d, e87ef, 525ad, db0eb, a9b8d, f1db5, 1b409, b5467, d5fe2, 716da, e2e3b, 348c0, 8f352, b21de, de3e7, 7e08a, 04bd2, eaac3, d946a, aeb38, 04fc4, f118f, aadbf, 827d7, f2676, d15d2, 12d8d, 16825, 76997, de74e, a5dec, c0198, 2a4e6, d0968, 5ee5a, 2140e, 4a0ce, c6d98, 95d0c, ac74b, 67a51, 06d1d

3. [functorch] Add torch._functorch.aot_autograd.compile_to_python: This pull request proposes adding the function torch._functorch.aot_autograd.compile_to_python, which composes AOTAutograd’s code-generated runtime wrappers around an inner Inductor-compiled callable into a standalone, auditable Python module that reproduces all per-graph metadata and runtime state as source code, enabling the backend contract behind torch.compiler.precompile to emit fully self-contained, source-expressible modules with comprehensive unit and end-to-end test coverage.

  • URL: pull/187859
  • Associated Commits: f2774, c11a2, 1b72f, ea8b0, 1259d, 71493, 259f9, 54edd, 001aa, eed33, 9cde3, 60609, b5202, d0320, 29053, 44eef, 62a28, 0e102, f3103, a8bc6, 8d9ea, b62e6, 4f938, 4e237, de9ad, 6b83a, 955dd, fcc63, c3a7c, 57011, 5ff9b, cf10f, c0a64, 15098, b09f6, 67dfb, fb997, 68f10, b8049, 2eabf, af938, abfb9, e4c13, bb182, fbed8, 49084
  • Associated Commits: f2774, c11a2, 1b72f, ea8b0, 1259d, 71493, 259f9, 54edd, 001aa, eed33, 9cde3, 60609, b5202, d0320, 29053, 44eef, 62a28, 0e102, f3103, a8bc6, 8d9ea, b62e6, 4f938, 4e237, de9ad, 6b83a, 955dd, fcc63, c3a7c, 57011, 5ff9b, cf10f, c0a64, 15098, b09f6, 67dfb, fb997, 68f10, b8049, 2eabf, af938, abfb9, e4c13, bb182, fbed8, 49084

Other Closed Pull Requests

  • SPMD Type Checking in local_map: This pull request adds a local_map(spmd_types: bool = False) keyword argument to enable running the local_map region with spmd_types type checking. It includes inference of Replicate to R/I placements from gradient input placements or defaults to R, and validates output and gradient output spmd_types using a gradient hook.
    pull/181398
  • Checkpoint Naming in SAC Implementation: This pull request introduces a checkpoint_name() API to the Soft Actor-Critic (SAC) implementation in PyTorch. The API allows explicit naming of tensors to improve checkpointing and model management.
    pull/176447
  • Debug and Custom Context Composition in Checkpoint: This pull request fixes an issue where passing both debug=True and a custom context_fn to torch.utils.checkpoint raised a ValueError. It introduces a _compose_context_fns utility that composes and stacks debug logging contexts on top of user contexts, enabling debug mode alongside custom context functions.
    pull/175338
  • Canonicalize Output Graph Node Order in Dynamo Tests: These pull requests set the canonicalize_output_graph_node_order flag to True in the Dynamo component for functorch, HOP, and distributed tests. This ensures consistent output graph node ordering during testing across these different test suites.
    pull/181778, pull/181779
  • Nested Graph Break (NGB) Enablement in Tests: This pull request attempts to enable Nested Graph Break on tests that have recently become compatible with NGB. It addresses issues related to dynamo and nested graph breaks to improve test coverage.
    pull/186657
  • Heuristics System Refactoring and Consolidation: These pull requests refactor the heuristics system by introducing a unified shared registry backend supporting both template and codegen heuristics. They consolidate previously separate registries, reorganize the heuristics/ module into sub-modules for compile-time and runtime configurations, and update imports without changing existing behavior.
    pull/183276, pull/183275
  • Triton Compile-time Autotune Fallback Fix: This pull request addresses Triton compile-time autotune fallback by recovering Triton launchers through disabling pipelining for recoverable shared-memory or out-of-memory failures. It ensures alignment of compile results with surviving launchers and prevents hardware-specific skips.
    pull/183681
  • Manywheel CI Debug Workflow Refactor: This pull request is a debug version of a previous PR created to investigate CI issues by extensively modifying and refactoring manywheel build and test workflows. Changes include restructuring build scripts, managing ROCm/XPU and s390x build paths, updating matrix configurations, and addressing environment setup and upload processes without merging into the main codebase.
    pull/180688
  • Enabling PyTorch Inductor Tests on XPU: This pull request enables various PyTorch inductor test cases on XPU by removing skip decorators and disabling blocking conditions. This reflects resolution of multiple underlying issues and allows more comprehensive testing on XPU platforms.
    pull/186915
  • Initial ROCm Support for gfx1250 Architecture: This pull request adds initial ROCm support for the gfx1250 (CDNA5) architecture by gating gfx1250-specific behavior on ROCm 7.14+ across multiple components. It extends support in hipBLASLt and hipSparseLt, adjusts shared-memory limits, refactors architecture checks, manages composable kernel builds, and enables related features like flash attention via AOTriton while outlining current limitations and CI considerations.
    pull/188597
  • cublasLt Backend for Grouped GEMM Operations: This pull request introduces a cublasLt backend for grouped GEMM operations in PyTorch, enabling default fp16 support on specific NVIDIA architectures with CUDA 13.2+ and 13.3+. It optionally supports bf16 via a config flag, is compatible with torch.compile and CUDA Graphs, and includes performance optimizations and constraints such as 16-byte alignment for matrices.
    pull/177037
  • PM-sampling Engine Integration in cupti_monitor Profiler: This pull request integrates the PM-sampling engine into the cupti_monitor profiler backend to capture and export true measured GPU utilization counters like SM-active and DRAM bandwidth percentages. It supports multiple observers, continuous sampling, and clock conversion but remains disabled by default due to GPU clock locking during sampling.
    pull/188019
  • Gradient Tensor Version Counter Check in Autograd: This pull request adds a version counter check for gradient tensors in the autograd engine to verify that the version of each gradient tensor remains unchanged between finalization of an InputBuffer and consumption by the next node. This detects in-place modifications that could cause silent incorrect results.
    pull/178293
  • Dynamic Slice Lowering Fix for Inductor Views: This pull request fixes dynamic slice lowering for generic Inductor views by handling dynamic slice bounds without requiring stride metadata. It also provides a fallback for unresolved slice_scatter bounds to maintain eager validation.
    pull/183652
  • Removal of Obsolete Python Wrapper for Symbolic Sizes: This pull request removes obsolete Python wrapper code that extracted symbolic sizes and strides by inspecting tensor inputs, as these free symbols are now explicitly passed as graph inputs. The C++ wrapper behavior remains unchanged.
    pull/184460
  • CTC Loss cuDNN Backend Fix for zero_infinity Option: This pull request attempts to fix the CTC loss function's cuDNN backend behavior when zero_infinity=True by adding failing tests and patching forward and backward implementations to correctly zero out infinite values. The changes were not merged.
    pull/176911
  • Typographical Corrections Across Multiple Components: This pull request corrects various typographical errors including duplicated words, misspellings, and grammatical mistakes in comments and docstrings across components like inductor, quantization, export, nn, and documentation without functional changes.
    pull/187367
  • Compile to Python Source Module in Torch Inductor: This pull request adds the internal function torch._inductor.compile_to_python which compiles a post-AOTAutograd functionalized graph module into a runnable Python source module with optional binary acceleration cache. It serves as the backend for torch.compiler.precompile and includes comprehensive tests for correctness, caching, and CPU/CUDA compatibility.
    pull/187858
  • Source Emit Module for Python Object Reconstruction: This pull request introduces source_emit.py, a module that reconstructs live Python objects as standalone, human-readable source code expressions instead of opaque pickled blobs. This enables serialization of complex runtime metadata into auditable Python source for downstream compilation and code generation workflows within functorch.
    pull/188376
  • Dynamo Generator Methods Refactor to Match CPython: This pull request refactors the generator methods .close, .send, and .throw in the Dynamo component to align their behavior with CPython semantics.
    pull/187690
  • Per-generator Exception Stack in Dynamo: This pull request adds a per-generator exception stack in the Dynamo component to mirror CPython's behavior, ensuring each generator maintains its own linked exception stack during its activity.
    pull/187744
  • Fast NEON Optimization Path in F.interpolate(): This pull request enables the fast NEON optimization path in F.interpolate() for bilinear and bicubic modes with antialias=True on channels-first images by internally converting them to channels-last format. This results in significant speedups, typically 1.5x to 2x, across various image resolutions.
    pull/177401

3.3 Pull Request Discussion Insights

This section will analyze the tone and sentiment of discussions within this project's open and closed pull requests that occurred within the past week. It aims to identify potentially heated exchanges and to maintain a constructive project environment.

Based on our analysis, there are no instances of toxic discussions in the project's open or closed pull requests from the past week.


IV. Contributors

4.1 Contributors

Active Contributors:

We consider an active contributor in this project to be any contributor who has made at least 1 commit, opened at least 1 issue, created at least 1 pull request, or made more than 2 comments in the last month.

If there are more than 10 active contributors, the list is truncated to the top 10 based on contribution metrics for better clarity.

Contributor Commits Pull Requests Issues Comments
jansel 608 19 0 109
williamwen42 414 26 0 50
guilhermeleobas 331 55 1 33
bobrenjc93 184 22 0 20
drisspg 166 19 1 39
ezyang 73 24 0 86
dolpm 127 11 0 10
d4l3k 97 20 1 26
frgossen 76 23 30 14
Skylion007 21 4 0 112

Don't miss what's next. Subscribe to Weekly Project News:
Powered by Buttondown, the easiest way to start and grow your newsletter.