Upgrade to Pro — share decks privately, control downloads, hide ads and more …

【Vitest5.0大解剖】Vitest5.0は何が速くなったのか

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.

 【Vitest5.0大解剖】Vitest5.0は何が速くなったのか

Avatar for 赤神青空

赤神青空 PRO

September 04, 2026

Video

More Decks by 赤神青空

Other Decks in Programming

Transcript

  1. ▪4.1.10 とどれくらい速くなったか 5.0 の比較(Node 24 / 3回の中央値) −53% deps-heavy 1.59s

    → 0.74s(vmThreads) 今ココ 性能 −25% long-haul 5.43s → 4.06s(vmForks + happy-dom) −19% enterprise-monolith 7.24s → 5.83s(1,280モジュール) 2/7
  2. ▪全部が速くなるわけではない 伸びる条件・伸びない条件 大きく効くのはvm系プール・Browser Mode・大規模なisolate実行。 効くところ vmThreads / vmForks Browser Mode(Chromium)

    モジュール数の多いisolate実行 ほぼ横ばいのところ forks + jsdom + isolation は 4.1 と±3%以内 環境セットアップが時間を支配している条件 測定用のリファレンスアプリ群は vitest-dev/benchmarks で公開されている 今ココ 性能 3/7
  3. ▪効きの大きい2つを図で 何をして速くなったのか ① Vite 設定を変えない projects が Vite サーバーを共有する Vitest

    . project: unit Vite サーバー Vitest . project: unit project: e e Vite サーバー project: e e project: node Vite サーバー project: node 共通ファイルを 3 回変換する Vite サーバー 1 つを共有 共通ファイルの変換は 1 回だけ ② fsModuleCache が安定化(変換結果をディスクに残す) 1 回⽬ テスト実⾏ 変換 2 回⽬以降‧別プロセス テスト実⾏ ディスクに保存 保存済みの変換結果を再利⽤ 変換をやり直さない sharedViteServer による Vite サーバー共有と、fsModuleCache の永続化 今ココ 性能 4/7
  4. ▪ 第1回のまとめ 効くのはvm系プール・Browser Mode・大規模なisolate実行。 大きいところ deps-heavy の vmThreads で 1.59s

    → 0.74s。 横ばいのところ forks + jsdom + isolation は 4.1 と±3%以内。 まず自分の設定がどの条件に当てはまるかを見るところから。 今ココ おわりに 7/7