さらに速くなったVite
Viteのコアチームメンバーの方のベンチマークによるとVite4.3(2023/04/11現在ではβステータス)パフォーマンス改善が行われてVite4.2と比較してコールドスタートが3倍以上、Vite4.3 + SWCの構成であればTurbopackよりもコールドスタートが速いという結果で出ているとのことです。
2023/04/24 追記:βステータス → 正式リリース (2023/04/24時点ではv4.3.1)
詳細な条件はこちら。
https://gist.github.com/sapphi-red/db27f9c18ed31894e409224051119e1b
補足ですが、10倍速いという宣伝をしたVercelのTurbopackの比較は今回の比較のようにSWCプラグインを使用している訳ではなく(現在はフィードバックを受けてSWCの構成で比較しています)Viteのデフォルト構成になっています。また、Rspackのデータは出始めで問題があったのもあり少し古いデータです。今は改善されてもっと速いとのこと。
参考(Vercelのベンチマーク)
https://turbo.build/blog/turbopack-benchmarks#bench
ゼロサムゲームではない
この件に関して最近Viteの開発者達は"not a zero-sum game"と言及しています。
今回の比較もあくまでVite4.2系とVite4.3系の比較であり、勝った負けたではなく他のライブラリは参考データとしての比較とのこと。共に改善していくことが重要なのだと仰っています。
また、Turbopackが「Viteより10倍速い」と宣伝した際にViteの作者であるEvan You氏はVercelの検証に関して、ユーザの体感に近いend-to-end HMRの速度での比較でない点や現実的でないシナリオ(30kのモジュール)であることなどを指摘しています。
単純に速いと言っても何を比較しているか、何を利用しているかといった条件が違えば速度が変わるのは当たり前です。しかしながら「TurbopackはViteよりx倍速い」、「今度はViteの方がTurbopackより速い」という風説のみが独り歩きしてしまいがちで、結果勝った負けたの話に終始しがちなところはあるかもしれません。
雑感
かつて私の企業ではCoffeeScriptを採用していました。現在のAltJS系の中で生き残っているのはTypeScriptであり、いわゆる勝ち馬(という表現は良くないですが)に乗れなかった結果として少なくない移行コストを支払うことになっています。
私もゼロサムゲームでない健全な競争の中で発展してほしいと願う一方、エコシステムの充実・サポート・移行コストなどを考えると企業としての技術スタックの採用は王道、つまり「勝った」技術を採用したくなります。その結果、盲目的に「x倍速い」といったニュースにのみ注目してしまうこともありました。
資金的な話もそうですが企業とOSSが健全な発展・関係性を築くためにはいくつかの現実的な壁があるように感じます。エンジニアとして冷静に情報を判断しつつ、リスペクトを持って互いに貢献していく姿勢が必要なのだと感じました。