# Mechanical Sympathy
## 定義
mechanical sympathy(機械への共感)は、ソフトウェアエンジニアMartin Thompsonが提唱した用語であり、ハードウェアの動作特性を深く理解した上でそれに寄り添うようにソフトウェア・アルゴリズムを設計する考え方を指す。語源は、英国のフォーミュラ1チャンピオンJackie Stewartが自らの車の機械的詳細を熟知していたことに由来する比喩である。AIシステムの文脈では、アルゴリズムをハードウェアの能力と協調設計(codesign)し、性能を最大化することを意味する。(Source: [[@2025__OReilly__AI Systems Performance Engineering - Chapter 1 Introduction and AI System Overview]])
具体例としてFlashAttentionは、GPU計算を「タイル化」してGPUメモリへの読み書き回数を最小化することで、長シーケンスの学習・推論において2〜4倍の高速化とメモリ使用量削減を実現した。DeepSeekのMulti-Head Latent Attention(MLA)は、NVIDIAのメモリ階層と専用Tensor Coreを活かすようにアテンション計算を再構成し、輸出規制で制約されたH800 GPU上でFlashAttentionをも上回るスループットを達成したと報告されている。これらは、ハードウェアの制約や新機能がソフトウェア・アルゴリズムの革新を促し、逆に新しいアルゴリズムがハードウェア設計(例: Transformer Engine、低精度Tensor Core、softmax専用の指数計算ユニット)を促すという「協調進化」のサイクルの具体例として位置づけられる。(Source: [[@2025__OReilly__AI Systems Performance Engineering - Chapter 1 Introduction and AI System Overview]])
## 横断的知見
- (現在1ソース目。横断的知見は2ソース以上で積み上がる。以下は本ソース単独からの暫定的な観察)
- FlashAttentionとMLAはいずれも「メモリアクセスパターンをGPUメモリ階層に合わせて再設計する」という共通のパターンでmechanical sympathyを実践しており、attention機構がAIシステムパフォーマンスエンジニアリングにおける協調設計の主戦場の1つであることを示唆する。(Source: [[@2025__OReilly__AI Systems Performance Engineering - Chapter 1 Introduction and AI System Overview]])
## 未解決の問い
- mechanical sympathyは書籍全体を貫く中心テーマとされているが、第2章以降でCUDAカーネル最適化・分散通信・PyTorchコンパイラといった各レイヤーで具体的にどのように適用されるかは未確認。後続章の取り込みで追跡する。
- FlashAttention・MLA以外に、mechanical sympathyの具体例として挙げられる最適化(例: DeepGEMM、DualPipe)が本概念とMixture-of-Expertsや通信最適化系の概念とどう関係づけられるかは未整理。
## 関連
- ソース: [[@2025__OReilly__AI Systems Performance Engineering - Chapter 1 Introduction and AI System Overview]]
- 概念: [[FlashAttention]] / [[Multi-Head Latent Attention]] / [[Goodput]]
- エンティティ: [[wiki/entities/AI Systems Performance Engineering|AI Systems Performance Engineering]] / [[DeepSeek-V3]] / [[NVIDIA]]
## 出典
- Chris Fregly, *AI Systems Performance Engineering*, O'Reilly Media, 2025, Chapter 1.