YandexがサーバーのCPUコストを最大20%削減できるツール「Perforator」をオープンソースで公開
ロシアの検索大手「Yandex」が、大規模なコードの非効率性を特定し評価するツール「Perforator」をリリースすると発表しました。オープンソースでのリリースとなっており、同時にコードも公開されています。
Yandex — Company news — Yandex develops and open-sources Perforator, an open-source tool that can save businesses billions of dollars a year on server infrastructure
https://yandex.com/company/press_center/press_releases/2025/30-01-2025
Perforatorはサーバーとアプリケーションを継続的にリアルタイムで監視および分析するためのツールで、コードの中で最もリソースを消費するセクションを特定し、最適化のための詳細な統計情報を取得できるとのこと。Perforatorはすでに1年以上にわたりYandex内で活用されているそう。
PerforatorはC・C++・Go・Rust・Python・Javaなどのプログラミング言語をサポートしており、こうした言語で書かれたプログラムについて「それぞれの処理にかかった時間」を詳細に分析し、フレームグラフの形式に視覚化することが可能です。視覚化のおかげで、時間がかかっている処理を一目で把握でき、効率的にプログラムのパフォーマンス改善に取り組むことができるというわけ。
Yandexは「最大でインフラストラクチャコストを20%削減できる可能性がある」と述べ、「企業の規模によっては年間数億円から数十億円の節約につながる可能性がある」とPerforatorを使用するメリットを訴えました。また、プロファイルガイド最適化(PGO)を備えることでC++で書かれたプログラムが最大10%まで自動で最適化されるとのこと。その他、A/Bテストなど大規模企業向けの機能も搭載しています。
Perforatorは、Linuxカーネル内で小さなプログラムを安全かつシステムの速度をほとんど落とすことなく実行できる「eBPF」という仕組みで動作しています。
カーネル領域で不適切なアップデートが行われてもクラッシュしないようにする技術「eBPF」とはどんな仕組みなのか - GIGAZINE

PerforatorはGitHubにてオープンソースのMITラインセンスで配布されており、誰でも無料で利用可能。Yandexのシニア開発者であるセルゲイ・スクヴォツォフ氏は、「世界中の技術革新を促進するとともに、開発に関する決定についてコミュニティと協力できる」とオープンソース化の意義を語りました。また、詳細なドキュメントも公開されています。
Yandexは「PythonやJavaとの統合をさらに強化したり、イベントのより正確な分析などの機能を追加したりする予定」とPerforatorの今後について述べました。
・関連記事
Netflixはパフォーマンスの改善のためにどのようにLinuxのカーネルを拡張する仕組み「eBPF」を利用しているのか? - GIGAZINE
「怒り」がクリエイティブなパフォーマンスを向上させる可能性があることが判明 - GIGAZINE
CPU使用率が増加するとパフォーマンスがどのように低下するかをGitHubのパフォーマンスエンジニアリングチームが解説 - GIGAZINE
AIに「もっといいコードを書いて」と繰り返し要求するとコードの実行速度は向上するがバグが増えるという報告 - GIGAZINE
無料&手軽にソースコードを可視化できる「Sourcetrail」、大規模開発やレガシーコードの理解に役立ちそう - GIGAZINE
・関連コンテンツ
in ソフトウェア, Posted by log1d_ts
You can read the machine translated English article Yandex releases open source tool 'Perfor….