PyTorch: [AARCH64] Use oneDNN jit:int8 matmul for torch._int_mm (#200389)

6,865 reads • 282 shares • 1 min read • Impact: 9.0/10 • Zero Trackers
Derived & scientifically synthesized from PyTorch GitHub Releases.
Original reference: [Source Link →]
Policy: Zero Trackers | Zero Ads | Objective Engineering Peer-Synthesis
Key Architectural Takeaway

On AArch64, torch._int_mm always uses the native fallback loop.

Executive Summary

On AArch64, torch._int_mm always uses the native fallback loop. TorchAO's Int8DynamicActivationInt8WeightConfig calls _int_mm on CPU, so int8 linear layers don't benefit from oneDNN. Since v3.13, oneDNN's AArch64 jit:int8 matmul (SVE + I8MM) supports s32 output ( uxlfoundation/oneDNN#5267 ). This PR routes _int_mm to it. Changes (AArch64 only; x86 unchanged) Dispatch _int_mm to oneDNN when the CPU has SVE and I8MM.

Hyperscale Open Source & Cloud Infrastructure Review

From an infrastructure engineering, cloud-native scale, and hyperscale governance standpoint: - **Hyperscale Provenance:** Open-sourcing internal frameworks subjects proprietary systems to rigorous public analysis. - **De-facto Standard Cohesion:** Publishing enterprise tooling establishes interoperable specifications across distributed execution. - **Vendor Decoupling:** Platform engineers can inspect underlying telemetry and memory layouts without black-box vendor lock-in.

Impact on the Open Ecosystem

Bridges enterprise engineering scale with independent, reproducible open-source software stacks.