RAM使用量100分の1のRust LSP「Rust Glancer」公開

原題: Rust Glancer: Rust LSP using 100x less RAM

なぜ重要か

低メモリ環境や旧型PCでのRust開発を可能にすることで、開発者層の裾野拡大と既存ツールチェーンの選択肢多様化につながる取り組みとして注目される。

個人開発者が4か月間開発したRust向けの代替LSP実装「Rust Glancer」が2026年8月19日に公開された。RAM使用量100MB以下を目標とし、インデックスのファイルシステムへのオフロードによって再起動後の再インデックスを不要にする2つの特徴を持つ。VS Code拡張機能として既に試用可能。

「Rust Glancer」は、既存のRust向けLSP実装「rust-analyzer」の代替として開発された軽量LSPプロジェクトで、2026年8月19日にブログ記事とともに公開された。開発者が4か月間取り組んできた成果であり、主な特徴は2点ある。

第一に、RAM使用量を合理的な規模のプロジェクトで100MB未満に抑えることを目標としている。デモ動画では実際に100MB以下のRAM使用量で動作することが確認された。第二に、プロジェクトのインデックスデータをファイルシステムに保存するため、エディタ再起動後に再インデックスが不要となる。

インデックス速度についてもベンチマークが公開されている。MacBook Pro M4 Max(36GBメモリ、2025年)での基本インデックス完了までの時間はRust Glancerが5秒、rust-analyzerが6秒。MacBook Pro M1(8GBメモリ、2020年)ではRust Glancerが6秒、rust-analyzerが7秒と、低メモリ環境でも競争力のある速度を示した。

rust-analyzerがRAMを多く消費する理由として、開発者はsalsaデータベースのインクリメンタルクエリ方式とrowanによる構文木表現に起因するメモリフラグメンテーションを挙げている。Rust Glancerはインクリメンタル処理を採用せず、保存時に分析結果を一括更新するアプローチを取ることで、分析済みデータをファイルシステムにオフロードし、必要時のみメモリに読み込む設計を実現した。

現時点では未完成の部分も多く、未実装機能や既知のバグが存在する。ただし、型推論やトレイトソルバー(chalk)を含む完全なインデックスパイプライン、goto definition・ホバー・インレイヒント・補完などの主要なLSP機能はすでに動作している。VS Code拡張機能のインストール、またはリポジトリからのビルドで試用できる。

出典

rust-glancer.github.io — 元記事を読む →