ast-grepがTree-sitterをRustで書き直し30%高速化
How AST-grep Rewrote Tree-sitter in Rust and Made It 30% Faster
ast-grepは、AIの支援を受けてTree-sitterのC言語コアをRustで書き直しました。この書き直しにより、パーサー単体では29.74%のスループット向上と20.0%のRSS(常駐メモリサイズ)増加、Tree traversalでは10.16%のスループット向上と8.9%のRSS増加を達成しました。ast-grep自体の処理(アウトライン抽出)では、ユーザーCPU時間を22.2%削減しましたが、RSSは29.8%増加しました。新しいコアは、AIコーディングエージェントが完全なファイルスナップショットを分析するために最適化されており、ネイティブなWebAssemblyコンパイル言語のロードやインクリメンタルツリーの再利用といった機能は削除されました。当初の最適化試行ではコードが複雑化し、セグメンテーション違反が発生しましたが、スコープの縮小と可読性の向上、メモリ割り当ての最適化、ツリーリーダーの改善などを経て、最終的にend-to-endで22.2%のパフォーマンス向上を実現しました。このプロジェクトは、AIがコード生成を加速する一方で、開発者が問題の特定と解決に集中する、新しい協業モデルを示しています。
- ast-grepがTree-sitterのC言語コアをRustで書き直し、パーサー単体で29.74%のスループット向上を達成
- end-to-endで22.2%のパフォーマンス向上、ユーザーCPU時間を22.2%削減
- 新しいコアはAIコーディングエージェントによる完全なファイルスナップショット分析向けに最適化
ast-grepによるTree-sitterのRust移行は、AIコード生成時代におけるツールチェーンの進化を示す事例。30%近いパフォーマンス向上は、AIコーディングエージェントが大規模コードベースをリアルタイム解析するユースケースで直接的な価値を生む。特に、C言語資産をRustで書き直す動きはセキュリティ・性能面で業界全体のトレンドであり、Rustエコシステムの拡大が投資テーマとして注目される。ただし本記事は特定企業の業績に直結するものではなく、業界動向としての位置づけ。