ドキュメント

Laya MLX は 10 倍速くなれるか?数学的調査

調査日:2026-09-19。ベースライン:Apple M3 Max(GPU コア 40、統合メモリ 128 GiB)上のコミット済み FP16 MLX 結果。このレポートは、代数的な事実、静的なコスト推定、選択したチェックポイント行列の CPU 計測、推論実験を要する仮説を分けます。この数学的調査のために GPU 推論や新しいレイテンシ計測は行っていません。併走するエンジニアリング調査には、利用可能な場合の候補のタイミングがあります。ここで「厳密」とは、数学的な依存関係と実数演算の関数を保つことを指します。GPU の縮約の順序やカーネルが違えば浮動小数点の結果は変わりうるため、既存の数値許容範囲と公開出力の契約が受け入れゲートのままです。

判断: これらのチェックポイントとその完全な出力を保ったまま、自作カーネルによる普遍的な 10× のエンドツーエンド改善を予算に組まないこと。厳密なローカル注意と出力の枝刈りは、価値のある上限つきの改善です。直接の低ランク分解は、サンプリングした 4 つの重み行列で無損失には程遠いものです。10× の製品改善は、厳密な繰り返しが実質的にあるワークロード、または大幅に小さく蒸留/再構造化したモデルの目標としては信頼できます。それらは別の約束であり、別のベンチマークを持たねばなりません。

1. 10 倍高速化が実際に要求するもの

以下は既存の、同期されたウォームなエンドツーエンド中央値で、準備と整形を含みます。新しい計測では ありません。各ベースラインは 5 回のウォームアップ、50 回の計時反復、質問バッチ上限 64 を使いました。短 50 問のフィクスチャは 3 つの質問定義を繰り返しますが、その元のランタイムはそれでも 50 問すべてを評価します。ダウンロード、ロード、コンパイルの時間はこれらの中央値の外です。

モデル 短 1:ベースライン → 10× 目標 短 10 短 50 長 1 長 10
Laya 13.421 → 1.342 ms 71.068 → 7.107 ms 336.030 → 33.603 ms 44.927 → 4.493 ms 420.987 → 42.099 ms
多言語 7.390 → 0.739 ms 27.386 → 2.739 ms 127.565 → 12.756 ms 37.635 → 3.763 ms 389.487 → 38.949 ms
型付き意思決定 13.712 → 1.371 ms 75.618 → 7.562 ms 380.560 → 38.056 ms 99.233 → 9.923 ms 1000.294 → 100.029 ms

出典:Laya FP16、多言語 FP16、型付き意思決定 FP16。短い側のパディング後の長さは 93/91/93、長い側の長さは 512/1024/1024 です。それらの長い行を比べてもトークン長は一定に保たれません。目標は、PyTorch MPS FP32 に対するのではなく、ネイティブ MLX FP16 に対するさらなる改善です。

提案する任意の最適化について、f をその エンドツーエンド実時間に占める計測済み割合、s をそれ自身の加速とします。アムダールの法則より:

whole-request speedup = 1 / (1 - f + f/s)
10× requires f > 0.9 and s >= f / (f - 0.9)

リクエスト時間の 95% を含むホットスポットを加速するだけでも、19× のホットスポット改善が必要です。98% でも 12.25×、99% なら 11× が必要です。手を付けない準備、出力変換、同期が合計で 10% 以上を占めるなら、残りの部分だけから有限の 10× の利得は得られません。独立なフォワードとエンドツーエンドの中央値は、その割合を推定するために差し引くことはできません。分割した計時実験かプロファイルを使ってください。

2. 密な作業と条件付きの下界

model.py から、隠れ幅 D、エンコーダ MLP 幅 I、エンコーダ深さ N、head 深さ H、バッチサイズ B、パディング済みトークン長 L を定義します。乗算と加算を 2 つの FLOPs として数えると:

A = N * (4 D² + 3 D I) + H * 12 D²
main dense FLOPs = 2 B L A
current dense attention products = 4 B (N + H) L² D

3DI はゲート付きエンコーダ MLP の両方の分岐とその出力射影を含みます。head MLP は別の従来型の 4D 展開を使います。これらの式は norm、活性化、スコアリング、マスク、転送、スケジューリングを除外し、従来型の密な実装のコストモデルであり、すべての可能なアルゴリズムにわたる無条件の演算下界ではありません。

系列 D / I / N / H 主要な密な重み A A に占めるエンコーダ MLP の割合 A の FP16 バイト数
Laya / 型付き意思決定 1024 / 2624 / 28 / 2 368,312,320 61.28% 736,624,640
多言語 768 / 1152 / 22 / 2 124,452,864 46.92% 248,905,728

多言語の埋め込みは 196,608,000 個の重みを持ちますが、推論は語彙全体を掛けず、選択された行を集めます。したがってチェックポイントの合計パラメータは、英語と比べてそのトークン単位の作業を誇張します。小さな埋め込みファイルが自動的に速い推論になるわけではありません。

モデル / 形状 密 + 密注意の作業 10× 目標で必要な実効スループット
Laya, B=1 L=93 69.57 GFLOPs 51.84 TFLOP/s
Laya, B=50 L=93 3478.44 GFLOPs 103.52 TFLOP/s
Laya, B=1 L=512 409.36 GFLOPs 91.12 TFLOP/s
多言語, B=1 L=91 23.26 GFLOPs 31.48 TFLOP/s
多言語, B=50 L=91 1163.05 GFLOPs 91.17 TFLOP/s
多言語, B=1 L=1024 332.19 GFLOPs 88.27 TFLOP/s
型付き意思決定, B=1 L=1024 883.15 GFLOPs 89.00 TFLOP/s

これらは 要件 であり、主張された Apple GPU のピークではありません。これらの形状での計測済みの密な GEMM の天井が、有用なエンジニアリング上の比較です。計測された天井はプロジェクトを非現実的にしえますが、それでもハードウェアの上限の証明ではありません。CPU の作業も目標の内側に収まるため、CPU の作業が GPU と重ならないなら、実際の GPU 実行はこの表が許すより早く終わらねばなりません。

Apple はこの 40 コアの M3 Max 構成について統合メモリ帯域 400 GB/s を明示しています。主要な FP16 行列の重みがリクエストごとに統合メモリから 1 回読まれ、オンチップキャッシュにすでに保持されていないという明示的な仮定の下で、理想的なストリーミングの床は英語/型付きで 1.842 ms、多言語で 0.622 ms です。これらは活性化、埋め込み、scorer の重み、すべての計算を除外します。また、公称の集約帯域がこのワークロードに完全に利用可能であることも仮定します。Apple の技術仕様。

英語の短 1 の目標 1.342/1.371 ms は、すでにその従来型の FP16 ストリーミングの床を下回っています。重みのストレージを変えずに 400 GB/s でこれらの目標を満たすには、数えた重みのうち約 200/188 MB がメモリ読み出しを避ける必要があるか、実行の仮定に別の変更が必要です。このレポートはオンチップキャッシュの容量を仮定も発明もしません。バッチをまたぐ重みの再利用、厳密な圧縮、代替のアルゴリズムは限界を変えます。この観察は普遍的な不可能性定理ではありません。

密な部分だけなら、理想的な重みのみの演算強度は FP16 で BL FLOPs/byte です:B=1 L=93 で 93、B=50 で 4650。活性化のトラフィックがこれらの数値を下げます。これは、各行列を共有するトークンの数が増えるにつれて、重みの圧縮がスループット戦略として説得力を失う理由を説明します。

3. 実際にどれだけの厳密な作業を除けるか?

最初のグローバルなエンコーダ層がすべての有効なトークンを潜在的に関連づけ、2 つの decision-head 層はどちらもグローバルです。あるトークンが最終出力に現れないことは、その中間表現が不要になることを意味しません。後のクエリが依然としてそれを key/value として使います。

厳密な例外は 最後の head 層です。すべての有効なトークンについてその K/V を計算し、Q は CLS と選択肢マーカーについてのみ計算し、その出力射影/MLP はそれらの選択位置にのみ適用します。1 つ前の head と完全なエンコーダは依然としてすべての有効なトークン状態を生成しなければなりません。これは依存関係の枝刈りであり、注意ヘッドの除去ではありません。CLS を含む R=5 の選択位置では、Q を融合した QKV 射影から分割するとき、その最大の密な節約は 20 B (L-R) D² FLOPs に、4 B L (L-R) D の注意 FLOPs を加えたものです。融合した QKV 射影を保つ方が簡単ですが、節約はより少なくなります。

ローカルなエンコーダ注意は abs(q_position-k_position) <= 64 を許し、境界を含む 129 位置の内側ウィンドウになります。L>64 で有効なローカルペアの数は 129L - 64*65 です。パディングと位置が保たれれば、禁止された K/V タイルを飛ばすことは数学的に厳密です。密な QK 乗算の後に適用するマスクはその演算の節約を実現しません。

モデル / 長さ モデル化 FLOPs 合計に占める注意積の割合 厳密なローカルウィンドウの削減 最終ヘッド選択の削減, R=5 合計の削減
Laya, 93 1.53% 0.086% 2.701% 2.787%
Laya, 512 7.87% 3.607% 2.857% 6.464%
型付き意思決定, 1024 14.59% 7.686% 2.904% 10.589%
多言語, 91 2.62% 0.130% 4.465% 4.595%
多言語, 1024 23.27% 11.919% 4.584% 16.503%

これらはモデル化した作業の削減であり、レイテンシの予測ではありません。モデル化した作業の 83.5–97.2% をそのまま残し、10% の予算には程遠いものです。すべての注意積を無料にしても、ここでは 1.53–23.27% しか除けません。逆に、注意を変えずにすべての密な射影を仮に 10× 加速しても、FLOP 効率が等しいなら、英語の短い入力で 8.79×、多言語の長い入力で 3.23× にしかなりません。実際のプロファイルが、アムダールを適用する前にこれらの演算の割合を計測した時間の割合に置き換えねばなりません。

ランタイムはすでに MLX の高速 SDPA を呼びます。FlashAttention は同じ密な softmax 注意の関数を、より少ない中間メモリのトラフィックで計算します。そのタイリングは任意のグローバル注意をトークン数に対して線形にはしません。チェックポイントの既存のローカルマスクを活用するのは厳密ですが、そのグローバル層に新しいスパース性を課すとモデルが変わります。QKᵀ の低ランク性は、要素単位の指数化と行の正規化の後で低ランクであることを意味しません。FlashAttention 論文、MLX 注意 API。

パディング除去も、独立した系列、元の位置、出力順が保たれれば厳密です。現在の短 50 問のフィクスチャは、パディングされたトークンの 8.9%(英語/型付き)と 5.8%(多言語)しか無駄にしません。それらのフィクスチャはパディング除去から 10× を得られません。1024 トークンの項目 1 つと 64 トークンの項目 49 個を含む別のワークロードなら、12.3× のトークン作業比に足るパディングを無駄にします。それはその分布に固有のスケジューリングの結果でしょう。

4. 低ランク分解は隠れた 10× の近道を明かすか?

形状 m × n の凍結した行列 W を、2 つの因子 U(m × r) と V(r × n) に置き換えると、トークン単位の乗算コストは mn から r(m+n) に変わります。損益分岐には r < mn/(m+n) が必要で、10× の行列作業削減には次が必要です:

r <= mn / (10(m+n))
best squared Frobenius residual at rank r = sum_{j>r} sigma_j²

2 番目の式は打ち切り SVD の最適値です。1024 幅の正方射影は最大でランク 51 を必要とし、その厳密なフルランク分解はむしろ乗算回数を倍にします。GELU、ゲート、softmax、入力依存の LayerNorm は、隣接する層の重みを単純に 1 つの定数行列へ掛け合わせることを妨げます。

私は 明示的に選択した 4 つの中間層の行列 を、CPU の float64 Gram 固有値ソルバで調べました。各モデル系列から、注意の出力行列 1 つと融合した MLP 入力行列 1 つです。最大の固有系は 1024×1024 で、要求したすべての BLAS スレッド上限は 1、GPU ライブラリはインポートせず、モデルのフォワードパスも実行していません。これらは選択した行列の完全なスペクトルであり、ランダム射影の推定でも、すべての層の調査でもありません。

サンプル行列 形状 10× の行列作業削減のための最大ランク そのランクで保たれる二乗フロベニウスエネルギー 最良の相対フロベニウス誤差 99% のエネルギーを保つランク
Laya 層 14 注意 Wo 1024×1024 51 28.66% 84.46% 690
Laya 層 14 MLP Wi 5248×1024 85 29.29% 84.09% 956
多言語 層 11 注意 Wo 768×768 38 24.97% 86.62% 516
多言語 層 11 MLP Wi 2304×768 57 32.88% 81.93% 697

生の計測値、選択した行列の SHA-256 値、特異値の極値、安定ランク、追加の候補ランクは math_spectrum.json にあります。サンプリングした各行列は数値的にフルランクです。4 つすべてで、二乗フロベニウスエネルギーの 99% を保つには、2 因子の演算上の損益分岐点を超えるランクが必要です。多言語の MLP Wi は安定ランクが 13.29 にすぎませんが、ランク 57 でも全エネルギーの 32.88% しか保てません。安定ランクは小さな再構成誤差に必要な次元ではありません。

これは 素朴な重みのみの SVD を近似無損失の近道とする ことに対する強い根拠です。すべての低ランクモデルのタスク精度が悪いことを証明するものではありません。トークンの活性化は限られた分布に収まりえ、再訓練は有用な計算をより小さな表現へ移せます。活性化を考慮した圧縮は、実際の入力共分散で重み付けした誤差、おおよそ ||(W-Wr) Sigma_x^(1/2)||F を最小化すべきで、その後、エンドツーエンドの品質を試すべきです。4 行列の解析はそれらの共分散、大域的なロジット誤差の上界、モデル全体で達成可能な高速化を推定しません。低ランクのファインチューニング差分も、凍結した事前学習済み行列そのものを捨てられることを意味しません。

自作の高速行列積もこの根拠を除きません。算術的な例示として、8 ではなく 7 積のブロック再帰は、追加の行列加算とトラフィックの前に、レベルごとに乗算作業の 12.5% しか節約しません。理想的な 10 レベルでも乗算は約 3.8× 少なくなるだけです。768–1024 幅の射影に深い再帰を適用することは、とくにすでにタイリングされた GPU GEMM に対して、信頼できる 10× のレイテンシ計画ではありません。これはすべての可能な厳密アルゴリズムを排除したという主張ではありません。

5. 量子化、枝刈り、早期終了は契約を変える

重みのみの量子化。 FP16 のスケールとオフセットを持つ 64 のアフィン群では、行列パラメータあたりの格納バイト数はおよそ bits/8 + 4/64 です。これにより、FP16 に対する理想的な行列ストレージの削減は 8 ビットで 1.88×、4 ビットで 3.56×、2 ビットで 6.40× になります。これらは計算の削減でも実時間の利得でもありません。この仕組みだけで重みのトラフィックを 10 分の 1 にするには、重みあたりおよそ 1 ビットにメタデータを加える必要があり、根本的に異なる近似です。既存の norm/埋め込み/head のテンソルとデコードのオーバーヘッドが、リクエスト全体の利点をさらに減らします。MLX quantize ドキュメント、quantized matmul ドキュメント。

量子化は、重みのトラフィックが支配するなら B=1 で有用ですが、大きなトークンの GEMM を加速するとは限りません。それはロジット、スコアの期待値、エントロピー信頼度、action 確率を変えます。公開 API はこれらすべてを露出するため、argmax の一致だけでは不十分です。各最終ロジットが最大 epsilon だけ変わるとすると、2*epsilon より大きい上位 2 ロジットの差は勝者ラベルを証明しますが、確率、スコア、action の一致を証明は しません。温度較正はロジット誤差をその温度で割ります。小さな温度は、見かけ上小さな生の誤差を拡大しえます。既存のチェックポイントは選択肢数の温度バケットが 0.1006 付近にあり、これが関係します。

トークンの枝刈り。 幅/深さと密な計算の効率を変えずに、近似的な 10× の密な作業の目標は、いくつかの句読点トークンを除くことではなく、層を通してトークン処理の約 10% を保つことを要求します。元の深さの割合 a を処理した後に枝刈りすると、密な作業比は a + (1-a)rho です。ここで rho は以降の層で保たれるトークンの割合です。a >= 0.1 なら、残りのすべてのトークンを捨てても、その簡略化モデルで 10× を超えることはできません。このモデルでは、最初のグローバル層がすでに各 state トークンをマスクされていないすべての質問/選択肢トークンに接続します。学習したトークンの重要度と動的な枝刈りは研究できますが、その正しさは訓練/較正を要するタスク品質の主張です。捨てられたトークンには否定、稀な実体、僅差の選択肢を決める事実が含まれうるので、初期の注意が低いことは後の層での無関係さの証明ではありません。

早期終了。 層 3 の隠れ状態を、層 28 の後に訓練した head にそのまま与えても、その入力分布は保たれません。中間の head と検証された信頼度の規則を訓練せねばなりません。10× の均一コストの深さ予算は、head と CPU のオーバーヘッドの前に、英語で約 2.8 エンコーダ層、多言語で約 2.2 です。現在の完全な head を保つと短い系列の密な予算はより厳しくなります。その 2 層だけで英語/多言語の A の 6.83%/11.37% です。多言語では、その head だけで 10% の密な作業予算全体を超えます。バッチの発散も重要です:縮小されない密なバッチに残るなら、個々の項目を早期終了しても何も節約しません。FastBERT と DeeBERT は、精度/速度のトレードオフを伴う訓練済みの適応的推論の手法を確立しています。報告された利得は Laya やこの Mac の計測値ではありません。

近似的な student と teacher のフォールバックを組み合わせると、直列実行を仮定して正規化コストはおよそ c + q です。ここで c は student のコストを teacher のコストで割ったもの、q は teacher のフォールバック率です。10× を満たすには c + q <= 0.1:teacher の 5% のコストの student は、フォールバックに最大 5% のリクエストしか残せません。それは平均レイテンシを改善しつつ、難しいリクエストの p95 は teacher のレイテンシ付近にとどまりえます。信頼度に基づく振り分けは厳密な等価性の証明ではありません。

6. 質問間で厳密に何を再利用できるか?

プロンプトは [CLS] question/options [SEP] state [SEP] です。異なる質問は state のオフセットと state の切り詰めの両方を変ええます。第 1 層のクエリ i について、注意の出力は:

o_i = sum_j exp(q_i dot k_j / sqrt(d)) v_j
      / sum_j exp(q_i dot k_j / sqrt(d))

マスクされていない任意の質問の key/value を変えると、すべての state クエリの分子と分母の両方が変わりえます。有限のロジットでは、マスクされていない softmax の重みは実数演算で正です。したがって最初のグローバル層の後の文脈的 state は質問に依存します。以降のすべての K/V はそれらの変化した state に依存します。完全な state エンコードや decoder 式の K/V キャッシュを異なる質問間で再利用すると、したがって関数が変わります。共有された生のテキストでは不十分で、オフセット、切り詰め、マスク、マーカーのメタデータも重要です。

区別する価値のある小さな厳密な例外があります:その最初の注意操作の前に、正規化されたトークン埋め込みとその 第 1 層、RoPE 前の Q/K/V 射影 はトークンの同一性にのみ依存します。それらはキャッシュまたは事前計算でき、絶対 RoPE 位置は後から適用されます。最初の QKV 射影全体をなくしても、ルックアップのトラフィックの前に、英語/多言語の 主要な密な作業の 0.85%/1.42% しか除けません。全語彙の QKV テーブルは、通常の埋め込みと並べて保持するなら、およそ 309 MB/1.18 GB の FP16 ストレージを加えます。第 1 層の state 間 softmax の十分統計量も、同一の state トークン/切り詰めと相対位置の条件の下で再利用でき、その後、安定な softmax の統合で質問の寄与と組み合わせられます。これは 1 つの注意層の一部を節約するだけで、以降の文脈的 state を再利用可能にはしません。

厳密な入力全体の重複排除 ははるかに大きな可能性を持ちます。N 個の要求された質問が U 個の同一の準備済みフォワード入力を含むなら、U を評価し、その生の出力を正しい順序のラベル、較正、ID、使用量の会計で元のすべての質問へ写し戻します。等価性とキャッシュのキーは、マスク、マーカー位置、質問タイプを含むすべての準備済みテンソルを覆わねばなりません。呼び出しをまたぐキーはさらにチェックポイントのリビジョン、dtype、実行構成を特定せねばなりません。既存の 50 問のフィクスチャでは U <= 3 なので、理想的な線形作業比は 50/3 = 16.67× です。実際のレイテンシはより予測しにくく、小さなバッチは効率が異なり、準備/出力の対応も残ります。10 問と 3 つの一意な入力では、比は 3.33× にすぎません。どちらの結果にも 50 の異なる質問のベンチマークを添えねばなりません。

呼び出しをまたぐ結果キャッシュを使うと、平均の正規化レイテンシは 1-h+h*epsilon です。ここで h はヒット率、epsilon はキャッシュヒットのコストをキャッシュなしの推論コストで割ったものです。10× の平均改善には h >= 0.9/(1-epsilon) が必要で、ヒットが推論の 1% のコストなら必要なヒット率は 90.91% です。ヒット率、ミス、コールドキャッシュのレイテンシ、ミスの経路を別々に報告してください。標準のベンチマークはまったく同じリクエストを繰り返すので、ラベル付けしていない呼び出しをまたぐキャッシュはモデルの実行を測ることをほぼやめてしまいます。

共有 state のエンコーダと質問固有のクロスアテンション は見込みのある再設計の製品ですが、元の早期の質問/state 相互作用を取り除くため、再訓練や蒸留を必要とします。再利用可能な state のパスが、おおよそ古い質問ごとのパス 1 回分のコストなら、Q=50 でその共有パスは古い予算全体の 2% を消費し、質問固有の作業は 10× の目標にさらに最大 8% しか消費できません。Q=10 では、その単一の共有パスが質問固有の作業の前にすでに 10% を使います。state の長さ、選択肢の複雑さ、選んだより小さな state エンコーダがこの推定を変えます。

7. 桁違いのモデル改善への信頼できる道筋

深さと幅の両方を減らすと、オーバーヘッドを吸収するのに十分な演算の余地が得られます。以下は student の設計予算 であり、実装したモデル、品質の主張、計測済みの高速化ではありません。同じトークン長を保ち、ゲート付きエンコーダ MLP と 1 つの従来型 decision-head 層を使い、同じ A の式で数えます。

Teacher 候補 N / D / I / H 主要な密な重み Teacher/student の密な作業比
Laya / 型付き 6 / 512 / 1344 / 1 21.82 M 16.88×
Laya / 型付き 4 / 512 / 1344 / 1 15.60 M 23.61×
多言語 6 / 384 / 576 / 1 9.29 M 13.40×
多言語 4 / 384 / 576 / 1 6.78 M 18.35×

埋め込みは比較的大きいままでも、集めるのは安価にできます。teacher の選択肢分布と action 出力を蒸留し、ラベル付きタスクを混ぜ、score/noul の挙動と変動する選択肢数を覆い、その後、ホールドアウトデータで出力の較正を再フィットします。完全な言語カバレッジと異なる質問を評価してください。TinyBERT は、蒸留を通じてエンコーダの深さ/幅を一緒に減らすことが、別の BERT の設定で大きな速度/品質のトレードオフをもたらしうる根拠です。報告された 9.4× の推論利得は数値的に Laya へ移せません。

自作のエンジニアリングでは、以下の判断を優先します:

  1. 新しい GEMM を書く前に限界を確立する。 B=1 とスループットバッチで、コンパイル済みモデルの時間と代表的な密なプリミティブを計測する。実際の持続スループットを上の 31–104 TFLOP/s の要件と比べる。起動の除去後も密な実行が支配的なら、新しい要素単位カーネルでは失われた桁を補えない。
  2. 厳密な出力選択と厳密なローカル注意を上限つきのプロジェクトとして実装する。 最後の head には明確な依存関係の証明があり、多言語の長いローカル経路には最大の厳密な演算の機会がある。カスタム Metal を保守する前に、計測した実時間の割合を調べる。既存の高速注意の数値契約を保ち、境界の長さ/パディングをテストする。
  3. 厳密な重複排除はワークロードの会計とともにのみ出荷する。 これは十分に反復的なアプリケーションで可能な 10× の結果への最速の道です。キャッシュなしの一意入力のベンチマークと共存させ、利用者が自分の結果を予測できるようにせねばなりません。
  4. 4/8 ビットと活性化を考慮した低ランクを、計測された近似として扱う。 速度の改善と較正された品質のゲートを一緒に要求する。格納バイト数が少ないことも、安定ランクが低いことも、それだけでは不十分。
  5. 新しく多様なリクエストで 10× が必要なら、より小さな student か共有 state のアーキテクチャを開発し検証する。 student の予算は、注意、CPU 準備、小カーネルのオーバーヘッドが残るため、意図的に 10× 超の密な作業削減を狙います。品質の予算と適切な訓練/評価データが前提条件であり、既存の等価性フィクスチャはこの主張を検証できません。

近似的な変種では、受け入れは choice の一致とラベル付き精度、スコア誤差、確率のドリフト、信頼度の較正、action 確率、僅差のケースを記録すべきです。既存の 378/378 の argmax チェック、600 回の有限反復呼び出し、AG News の回帰の整合は、これらのテストでの現在の移植の挙動を確立します。新しい圧縮モデルを検証するものではありません。別個のモデル同一性を保ち、p50/p95、コールド設定、メモリ、一意な入力数、品質を一緒に報告してください。

再現と範囲

  • math_costs.py は、チェックポイントの設定と既存のベンチマーク JSON から、アーキテクチャ由来のすべての表とレイテンシ目標を再現します。math_costs.json は入力ファイルのハッシュとチェックポイントのリビジョンを記録します。
  • math_spectrum.py は、選択した 4 つの CPU 行列スペクトルを再現します。math_spectrum.json は正確な行列ハッシュを含みます。NumPy と safetensors のみを使い、完全なモデルはロードしません。
  • 固定したソースチェックポイントをダウンロードした後、リポジトリのルートから .venv/bin/python experiments/math_costs.py と .venv/bin/python experiments/math_spectrum.py を実行してください。CPU のサンプリングとエンジニアリングの GPU 計測は、重ならないように調整しました。
  • 現在の MLX の量子化の意味は、求められた Context7 のライブラリ解決とそれに続く別の量子化ドキュメントの照会を使い、find-docs スキルで確認しました。公式の MLX ドキュメント、ModernBERT/FlashAttention と蒸留/早期終了の論文、Apple の仕様、実際のローカルモデルを出典として使いました。論文の性能数値をこのマシンでの計測として提示することはありません。

結論: 同じチェックポイント、同じ完全な出力意味の下では、当面、「いくつかのカーネルを手書きすればさらに 10× 速くなる」という信頼できる道筋はありません。現行モデルの大半は密な計算です。ローカル注意と最終 head の厳密な枝刈りを足しても、モデル化した FLOPs の約 2.8%–16.5% しか削減できません。実測の重みのサンプリングは、行列分解を 10 分の 1 の作業量まで圧縮すると、最良でも相対フロベニウス再構成誤差が約 82%–87% になることを示しており、近似無損失の近道とはみなせません。10× は、繰り返しの多い入力に対する厳密な重複排除/キャッシュ、あるいは蒸留によって層数と幅を一緒に縮め、共有 state のエンコード方法を再設計することから、より見込みがあります。前者はヒット率と一意入力の性能を公表する必要があり、後者は精度、スコア、確率、action の挙動を訓練して再検証する必要があります。