論文の概要: Silent Failures Beyond the 32-Bit Index Range: A Differential Characterization of Large-Tensor Matrix Multiplication in PyTorch's MPS Backend
- arxiv url: http://arxiv.org/abs/2609.22991v2
- Date: Wed, 23 Sep 2026 09:21:20 GMT
- ステータス: 翻訳完了
- システム内更新日: 2026-09-25 00:05:17.663626
- Title: Silent Failures Beyond the 32-Bit Index Range: A Differential Characterization of Large-Tensor Matrix Multiplication in PyTorch's MPS Backend
- Title(参考訳): 32ビット指数範囲を超える無音障害:PyTorchのMPSバックエンドにおける大きめ行列乗算の微分的特徴
- Abstract要約: PyTorchのMetal Performance Shaders (MPS)バックエンドは、バッチ行列乗算の間違った結果を返す。
dタイプ、メモリレイアウト、シェイプ、バッチサイズのbmmは、約231ドルと232ドルです。
私たちはハーネス、生の結果、そしてjniimi/mps-silent-failuresで232ドル以上の要素に触れるMPS操作を止めるガードをリリースします。
- 参考スコア(独自算出の注目度): 0.0
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Apple Silicon machines with large unified memory make it possible to hold large tensors on a desktop GPU. However, we found that PyTorch's Metal Performance Shaders (MPS) backend silently returns wrong results for batched matrix multiplication with more than $2^{32}$ elements. torch bmm, including its wrappers matmul and eager attention, returns relative errors above 1 without an exception or a warning in every PyTorch release tested (2.4.1 to 2.14.0). We sweep bmm over dtypes, memory layouts, shapes and batch sizes around $2^{31}$ and $2^{32}$ elements, and judge every result against a float64 computation on the CPU. Three rules account for every outcome on 2.14.0. When the output exceeds $2^{32}$ elements and an operand is a transposed view, the entire output is wrong and equals a computation that ignores that operand's strides. Otherwise, a view with at least $2^{31}$ elements raises an exception, and a contiguous input above $2^{32}$ elements makes exactly the batches beyond that point wrong, equal to a computation whose index wraps at $2^{32}$. A slightly larger problem can thus turn an explicit error into a silent failure. The rules extend to the backward pass, where a correct forward pass can return silently wrong gradients. A second machine with another chip, under two macOS versions, reproduces all 6156 results, including the wrong values, and the same sweeps on an NVIDIA A100 are correct in all 2530 runs. In a public sentiment classifier, one oversized batch corrupts a third of the outputs, which collapse onto one class. All findings come from observable behavior, without access to the backend's closed-source kernels; we release the harness, raw results and a guard that stops any MPS operation touching $2^{32}$ or more elements at jniimi/mps-silent-failures (https://github.com/jniimi/mps-silent-failures).
- Abstract(参考訳): 大きな統一メモリを持つAppleのシリコンマシンは、デスクトップGPU上で大きなテンソルを保持することができる。
しかし、PyTorchのMetal Performance Shaders (MPS) バックエンドは、バッチ行列の乗算を2.32ドル以上の要素で誤って結果を返すことがわかった。
トーチbmmは、そのラッパーマットと熱心な注意を含むが、テストされたすべてのPyTorchリリース(2.4.1から2.14.0)で例外や警告なしで1以上の相対誤差を返す。
d型、メモリレイアウト、形状、バッチサイズを$2^{31}$と$2^{32}$要素で調べ、CPU上のfloat64計算に対してすべての結果を判断します。
3つのルールが2.14.0のすべての結果の原因となっている。
出力が$2^{32}$要素を超え、オペランドが転置されたビューである場合、全体の出力は間違っていて、オペランドの進行を無視する計算と等しい。
さもなければ、少なくとも$2^{31}$要素を持つビューは例外を発生させ、$2^{32}$要素を超える連続的な入力は、その点を超えるバッチを正確に間違ったものにし、インデックスが$2^{32}$でラップする計算に等しい。
これにより、わずかに大きな問題は、明示的なエラーを静かな失敗に変えることができる。
規則は後方通過まで延長され、正しい前方通過は静かに間違った勾配を返すことができる。
別のチップを搭載した第2のマシンは、2つのmacOSバージョンの下で、間違った値を含む6156の結果をすべて再現し、NVIDIA A100上の同じスイープは、全2530回の実行で正しい。
公開感情分類器では、1つの大きすぎるバッチが出力の3分の1を破損させ、1つのクラスに崩壊する。
Jniimi/mps-silent-failures (https://github.com/jniimi/mps-silent-failures.com/jniimi-silent-failures.com/jniimi-silent-failures )で2.32ドル以上の要素に触れるMPS操作を止めるハーネス、生の結果、ガードをリリースします。
関連論文リスト
- TorchMorph: CUDA-accelerated Morphological Transforms [4.910415354181461]
PyTorch上に構築されたGPUビジョンライブラリは、演算子の狭いサブセットをカバーする。
TorchMorphは、二項形態学、グレースケール形態学、および正確な近似距離変換をカバーする作用素を公開する。
バッチ実行は、グレースケール形態上のscipy.ndimageのスループットの最大1.1e3倍に達する。
論文 参考訳(メタデータ) (2026-08-25T15:46:45Z) - TEMPO: Makespan-Aware Expert-Parallel Load Balancing Across Memory- and Compute-Bound Regimes [6.460910545652521]
TEMPOは、クリティカルパスからミリ秒でバッチ毎のディスパッチを解決するメースパン対応ディスパッチである。
SG統合はプロセスアウトで実行され、ディスパッチを1つのイングラフカーネルにフューズする。
Testbed Bのエンドツーエンドでは、Qwen3-235Bが4-6%のスループットを獲得し、p99のレイテンシを15.6%のコストで削減している。
論文 参考訳(メタデータ) (2026-08-13T10:21:11Z) - More Structure, Not More Capacity: Object-Centric Representations for Visuomotor Imitation Learning [54.65906330923846]
対象中心のスロット表現は、事前学習された視覚モデルに代わる構造化された代替物であることを示す。
トークンの16倍の高密度なパッチグリッドは、グローバル機能に匹敵するパフォーマンスはない。
明示的な2D空間目標とネイティブ解像度レンダリングにより、全システムは68.7$pm$4.2%まで上昇し、特権付き3Dオーラクルの上界の直ぐ下にある。
論文 参考訳(メタデータ) (2026-07-10T10:35:24Z) - Rigel: Reverse-Engineering the Metal 4.1 Tensor Compute Path on the Apple M4 Max GPU [3.151184728006369]
我々は、Apple M4 Maxのこのパスを実証的に特徴づけるRigelを紹介します。
私たちは不透明な8x8コラボレーティブ_tensorのフラグメントレイアウトを再構築します。
キャラクタリゼーションにより、GEMM + bias + GELUカーネルはキャッシュ抵抗状態において分解されたパスを+6.5-12.9%上回る。
論文 参考訳(メタデータ) (2026-06-11T00:10:23Z) - When Quantization Is Free: An int4 KV Cache That Outruns fp16 on Apple Silicon [0.0]
KVキャッシュ量子化は、品質-レイテンシトレードオフとしてフレーム化される。
Apple Siliconの統一メモリにインセンティブを与えています。
論文 参考訳(メタデータ) (2026-05-07T05:44:39Z) - Characterizing WebGPU Dispatch Overhead for LLM Inference Across Four GPU Vendors, Three Backends, and Three Browsers [0.0]
WebGPUのセキュリティを重視した設計では、ニューラルネットワーク推論において、多数の小さなディスパッチにまたがる化合物の操作毎の検証が義務付けられている。
バッチサイズ1のLLM推論のためのWebGPUディスパッチオーバーヘッドを,4つのベンダ(NVIDIA,AMD,Apple,Intel)と2つのネイティブ実装(Dawn,wgpu-native)と3つのブラウザ(Chrome,Safari,Firefox)にまたがるシステマティックな評価を行った。
私たちの主なコントリビューションはシーケンシャルなディスパッチ手法です。
論文 参考訳(メタデータ) (2026-02-09T20:14:42Z) - A Simple Linear Patch Revives Layer-Pruned Large Language Models [58.056251480151104]
大規模言語モデル(LLM)の圧縮技術として広く使われているレイヤプルーニング(Layer pruning)が登場している。
textscLinearPatchはプルーニングインターフェイスで2つの操作を1つの行列に乗算する。
パッチはメモリ効率の悪いオフライン蒸留によって5Kの未ラベルのサンプルでさらに洗練され、1つのGPUでわずか30分で95.16%に保留できる。
論文 参考訳(メタデータ) (2025-05-30T15:06:08Z) - BurTorch: Revisiting Training from First Principles by Coupling Autodiff, Math Optimization, and Systems [56.16884466478886]
BurTorchは、単一ノードワークステーション上でのディープラーニング(DL)トレーニングを最適化するために設計された、コンパクトな高性能フレームワークである。
BurTorchは最小限の設計を採用し、これらの状況下では、古典的なコンパイルされたプログラミング言語がDL研究において重要な役割を果たすことを証明している。
論文 参考訳(メタデータ) (2025-03-18T00:52:12Z) - Overcomplete Tensor Decomposition via Koszul-Young Flattenings [56.82556231289414]
最小ランク1項の和として$n_times n times n_3$ tensorを分解する新しいアルゴリズムを与える。
次数-d$s のさらに一般的なクラスは、定数 $C = C(d)$ に対して階数 $Cn$ を超えることができないことを示す。
論文 参考訳(メタデータ) (2024-11-21T17:41:09Z) - Average-Case Complexity of Tensor Decomposition for Low-Degree
Polynomials [93.59919600451487]
多くの統計的推論タスクにおいて「統計計算ギャップ」が発生する。
1つの成分が他の成分よりもわずかに大きいランダムオーダー3分解モデルを考える。
テンソルエントリは$ll n3/2$のとき最大成分を正確に推定できるが、$rgg n3/2$のとき失敗する。
論文 参考訳(メタデータ) (2022-11-10T00:40:37Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。