CPUボトルネックの謎を追って:Pinterestが「ゾンビ」を発見するまでの3ヶ月

Finding zombies in our systems: A real-world story of CPU bottlenecks

CPUボトルネックの謎を追って:Pinterestが「ゾンビ」を発見するまでの3ヶ月

PinterestのMLプラットフォームチームは、Rayベースの分散トレーニングジョブが断続的なネットワーク障害でクラッシュする問題に直面。調査の結果、ENAネットワークドライバのリセットが原因で、特定のアベイラビリティゾーンでのみ発生。CPU使用率の高いコアがネットワークスレッドを飢餓させていることが判明。perfとmpstatによるプロファイリングで、単一コアが100%システムCPUを使用している瞬間を捉え、最終的に「ゾンビ」プロセスの存在を突き止める。

ある日、私たちはシステムの中に「ゾンビ」を発見しました。
  1. troelsSteegin

    これは、すべてのAI関連の投稿やツールと比べて、懐かしい喜びを与えてくれる読み物でした。それはさておき、このケーススタディは興味深いベンチマークになるでしょう。特に、根本原因が他の誰かがブログに書いていたおかげで特定されたという点が印象的でした。私たちの「デジタル・コモンズ」は、外部性としてではなく、もっと評価されるべきです。追記:私が言いたいのは、「インターネットは無料であるべき」ということですが、派生的な作品を通じた商業化は著者に報酬を与えるべきだということです。これは本題から外れているので、気にしないでください。

  2. alain94040

    興味深い話ですね。Linuxスケジューラについては詳しくありませんが、96コアのうち1コアがゴースト割り当てを追いかけているとしても、なぜネットワークスレッドが他の95コアのいずれかを使わず、何秒もスタックするのでしょうか?その1コアがカーネル全体をブロックしているのでなければ、もっとすぐに目に見えるはずですが。

  3. deathanatos

    でも、96コアのVMで1コアが100%使用率になると、なぜENIドライバが落ちるのでしょうか?たとえユーザースペースが96コアすべてを最大限に使おうとしていても、ENIドライバはユーザースペースを優先的にプリエンプトできるほど高い優先度を持つべきで、それでも落ちないと期待するでしょう?

この日のほかの記事

2026-08-09