# ユニバーサルスケーラビリティ法則
## 定義
ユニバーサルスケーラビリティ法則(Universal Scalability Law, USL)は、ニール・ガンサー博士(Neil Gunther)が考案したスケーラビリティのアナリティカルモデルで、以前はスーパーシリアルモデル(super-serial model)と呼ばれていた。[[アムダールの法則]]がシリアルなリソース・ワークロードコンポーネントの競合(スケーラビリティプロファイルでいう「競合」)のみをモデル化するのに対し、USL はさらにコヒーレンス(データの一貫性維持に伴うオーバーヘッド)による遅れのパラメータを追加する。定義は C(N) = N/(1 + α(N−1) + βN(N−1)) で、C(N) は相対的な能力・容量、N はスケーリングするパラメータ(CPU数や負荷等)、α はアムダールの法則と同じシリアル度、β はコヒーレンスパラメータである。β = 0 のときアムダールの法則に一致する。アムダールの法則がスケーラビリティプロファイルの頭打ち(ニーポイント・シーリング)までしか捉えられないのに対し、USL はコヒーレンスオーバーヘッドによるスループットの実際の下降まで表現できる点が特徴である。適用手順は、既存システムの観察やマイクロベンチマーキング等の実験でデータを集め、回帰分析(gnuplot・R 等)でパラメータ(α, β)を求め、データポイントとモデル関数を並べてプロットして差を可視化する、という3段階である。(Source: [[@2023__OReillyJapan__詳解 システム・パフォーマンス 第2版 - Chapter 2 メソドロジ]] §2.6.4)
## 横断的知見
(このセクションは複数ソースの突き合わせで得られる知見を蓄積する。現時点では本概念に触れたソースが1件のため、蓄積を今後の ingest に委ねる。)
## 未解決の問い
- USL のコヒーレンスパラメータ β は具体的にどのハードウェア/ソフトウェア機構(キャッシュコヒーレンスプロトコル、分散ロック、レプリケーション同期等)に対応づけて解釈すべきか。本章は数式のみを示し、β の物理的な由来には踏み込んでいない。
- [[アムダールの法則]]が AI 高速化文脈(実践的パフォーマンスエンジニアリング本)で単体で使われているのに対し、USL を同種の AI/ML ワークロードのスケーラビリティ分析に適用した事例はあるか。
## 関連
- [[@2023__OReillyJapan__詳解 システム・パフォーマンス 第2版 - Chapter 2 メソドロジ]] — USL の原典解説(§2.6.4)。
- [[アムダールの法則]] — β=0 の特殊形としての関係。
## 出典
- [[@2023__OReillyJapan__詳解 システム・パフォーマンス 第2版 - Chapter 2 メソドロジ]] §2.6.4