
Breakpointで注目を集めたFiredancerとは一体何か?
TechFlow厳選深潮セレクト

Breakpointで注目を集めたFiredancerとは一体何か?
SolanaバリデータクライアントFiredancerのパフォーマンスはどのようになっているか?どうやって実行するのか?
執筆:Karen、Foresight News
先週開催されたSolana Breakpointでは、会場の雰囲気が活気に満ちており、エコシステム製品の発表が相次ぎ、多彩な周辺イベントも盛り上がりに拍車をかけました。この祭典の中でも特に注目を集めたのは、Solanaのバリデータクライアント「Firedancer」の初期バージョンが正式にメインネットにリリースされたことでした。この画期的な成果は特別な関心を集め、Solanaネットワークがパフォーマンス面で質的飛躍を遂げることを象徴しており、また単一クライアントのクラッシュによるネットワークダウンのリスクを回避できるようになることを示しています。
Firedancerの開発は2021年から2022年にさかのぼります。元々Anzaが開発した既存クライアントAgaveに対して、Jump Trading Groupが主導して開発したSolanaの第二のバリデータクライアントとして、単一障害点(SPOF)のリスクを排除し、ネットワーク全体の堅牢性と耐障害性を高めることを目的としています。Rustベースの既存バリデータとは異なり、FiredancerはC言語で記述されており、Rustコードを一切含まない設計により、潜在的な脆弱性がネットワーク全体に与える影響を大幅に低減し、Solanaのセキュリティにさらに強固な防御を追加しています。
Firedancerのパフォーマンスは?
Solana Breakpointでのデモにおいて、Jump Cryptoの最高科学責任者Kevin Bowers氏は、Firedancerが1秒あたり100万件以上のトランザクション処理能力を発揮できることを紹介しました。これは現在のSolanaの理論上の数万TPSという上限を大きく上回る数字です。Bowers氏はこの成果を、「田舎道を州間高速道路に拡張する」ようなものだと比喩し、ネットワークコストの削減と容量拡大の両立を予見させました。

Jump Tradingの核心エンジニアLiam Heeger氏は、テストネットにおけるFiredancerの進捗を共有し、このクライアントがすでに2万ブロック以上を生成し、ステーキング比率が1%に達していることを明らかにしました。
もう一人のエンジニアAryaman Jain氏のデモでは、特定条件下におけるFiredancerの性能がさらに明かされました。たとえば、10ノードのバリデータ環境下で、TPSは100万レベルに達し、1秒あたり12億を超える計算ユニットを処理可能であり、3.5GbpsのBlockspace能力と50万TPSのVM実行効率を示しました。

Firedancerはどのように動作するのか?
Firedancerは、高性能コンピューティングスタックおよびネットワークスタック、Runtime、コンセンサスメカニズムという3つの主要構成要素を中心に構築されています。FiredancerがSolanaネットワークのパフォーマンスを100万TPSまで引き上げられる(現行プロトコルの制限では約81,000 TPSに抑えられている)理由は、革新的なアーキテクチャ設計とデータフロー最適化にあります。
このバリデータは並列処理モデルを採用しており、少数のスレッドで多様なタスクを実行します。各スレッドはネットワークパケット処理、トランザクション検証、ブロック生成などの特定タスクに専念することで、リソースの最大限の活用とトランザクション処理速度の著しい向上を実現しています。

具体的には、各スレッドは11種類の異なるジョブのいずれかを実行します。あるジョブは1つのスレッドで完結しますが、他のジョブは多数のスレッドが同じ作業を並列に実行する必要があります。また、各スレッドには専用のCPUコアが割り当てられており、そのコアに対する排他的な所有権を持ちます。つまり、スレッドは決してスリープ状態にならず、OSによって他の用途に使用されることもありません。
Firedancerは「タイル(tiles)」と呼ばれるアーキテクチャも導入しています。各タイルは特定のジョブ、それを実行するスレッド、および割り当てられたCPUコアの組み合わせを意味します。この方式により、パフォーマンスチューニングが柔軟かつ効率的に行えます。たとえば、netおよびquicの各タイルは100万TPS以上を処理可能であり、verifyおよびbankタイルはトランザクション検証とブロック実行に特化しています。処理速度はやや低くても、高負荷シナリオの需要を十分に満たします。
Firedancer公式ドキュメントに記載されている11種類のタイルは以下の通りです。
-
net:ネットワーク機器からネットワークパケットの送受信を行う(1タイルあたり100万TPS以上処理可能);
-
quic:クライアントからのトランザクションを受信し、すべての接続管理およびデータグラム処理を実行してQUICプロトコルを実装(1タイルあたり100万TPS以上処理可能);
-
verify:着信トランザクションの暗号署名を検証し、無効なトランザクションをフィルタリング(1タイルあたり20万~40万TPS処理可能);
-
dedup:重複する着信トランザクションをチェックし、フィルタリング;
-
pack:リーダーとなった際に、着信トランザクションをパッケージ化し、実行順序をスマートに調整;
-
bank:調整されたトランザクションを実行(1タイルあたり20万~40万TPS処理可能);
-
poh:バックグラウンドで継続的にハッシュ演算を行い、実行済みトランザクションと生成されたハッシュ値を混ぜ合わせることで、順序性と時間性を証明する仕組み;
-
shred:リーダーの場合、ネットワークにブロックデータを配布。非リーダーの場合は、ブロックデータを受信・再送信(スループットは主にクラスタサイズに依存。ベンチマークテストでは、小規模クラスタであれば1タイルで100万TPS以上処理可能);
-
store:リーダーの場合、ブロックデータを受信。他ノードがリーダーの場合は、それらからブロックデータを受け取り、ローカルディスク上のデータベースに保存;
-
metric:他のタイルに関する監視情報を収集し、HTTPエンドポイントに提供;
-
sign:バリデータの秘密鍵を保持し、他のタイルからの署名要求を受信・応答。
なお、Firedancerが成熟する前に、その過渡版であるFrankendancerが先行してSolanaメインネットに導入されています。FrankendancerはFiredancerとAgaveのコードの一部を統合したハイブリッド体で、Firedancerのネットワークスタックおよびブロック生成機能の強みを取り入れつつ、Agaveの実行およびコンセンサス機能を維持しています。一方、Firedancer自体は完全にゼロから構築されており、Agaveのコードを一切含んでいません。
Firedancerの影響は?
間違いなく、Firedancerの登場はSolanaエコシステムに大きな影響を与えます。バリデータの多様性を大きく豊かにし、単一障害点がネットワーク安定性に与える影響をさらに弱め、Solanaネットワークの信頼性をより堅固な基盤の上に築くことになります。
さらに、Firedancerは既存プロトコルとの後方互換性を保っており、DApp開発者やユーザーが大きな変更を余儀なくされず、エコシステムの円滑な移行を確実にします。
現時点ではFiredancerは依然として投票非参加モードであり、今後も継続的な最適化と監査を経る必要がありますが、Solanaネットワークの将来に向けた希望に満ちた地平を描き出しています。
TechFlow公式コミュニティへようこそ
Telegram購読グループ:https://t.me/TechFlowDaily
Twitter公式アカウント:https://x.com/TechFlowPost
Twitter英語アカウント:https://x.com/BlockFlow_News













