14 ポイント 投稿者 xguru 2023-08-31 | 5件のコメント | WhatsAppで共有
  • MicroVMは、この5年間で技術R&D分野の注目領域となっている
  • 中核となるアイデアは、IBMが1960年代にハイパーバイザーとともに発明したいくつかの概念と技術を再創造したもの
    • 他のOS上でゲストとして実行されるよう、OSを特別に設計すること
    • VM内で動作しつつ、偽のハードウェアではなく特定のハイパーバイザーが提供するリソース(VirtIO)と通信するようにすること
  • 商業的な目標は「サーバーレス」コンピューティング性能を提供すること
    • AWS LambdaはFirecrackerで動作
    • FirecrackerはLinuxカーネルに組み込まれたKVMハイパーバイザーを基盤としている(従来のAWSはXenハイパーバイザー基盤だった)
    • Linux-On-Linux
  • FreeBSDは25msで起動可能で、同じ環境ではLinuxは75〜80msかかる
  • FreeBSDカーネル開発者のColin Percivalが最初に起動速度改善の作業を始めた時は10秒だったが、今では400倍高速化した
  • 現在はx86-64で最適化されているが、Arm64向けの作業も進行中
  • Firecrackerは現在もっとも広く知られているmicroVMの1つだが、他の製品もある
    • QEMUはmicrovm仮想プラットフォームを追加し、オンライン開発環境サービスのHocusはFirecrackerからQEMUへ移行した
  • クラウド以外の用途もあり得る
    • まったく異なるOS上で、あるOS向けに構築された単一プログラムを実行することは、さまざまな状況で有用

5件のコメント

 
galadbran 2023-08-31

80ミリ秒と20ミリ秒の差は、実際にサービス全体やサービス提供者の体験という観点では、どの程度の違いなのでしょうか? 単に80ミリ秒でも十分なのではないか、という気もなんとなくするので。10秒はちょっと長すぎましたが。

 
kunggom 2023-08-31

コールドスタート時間をクライアントとのTLSハンドシェイクにかかる時間より短くできれば、遅いコールドスタートによる一部ユーザーの初期体感速度の低下や、それを防ぐためのウォームアップなどの対策は不要になると言われています。
Cloudflareでは、Workersサービスのロード時間をなんと5ミリ秒まで短縮し、これを実際に達成したと自慢したことがあります。

 
alstjr7375 2023-09-01

Cloudflareの技術力、すごいですね...

 
xguru 2023-08-31

最近、Colin Percival は SYSINIT のバブルソートからマージソートへの変更で話題になりましたが、
この記事は、その背景にある FreeBSD の起動速度改善と microVM との相関関係もあわせて説明している内容なので、紹介します。

Hocus - GitHub Codespaces のオープンソース代替
Firecracker を QEMU で置き換えた理由

FreeBSD は起動時に時間の 7% を SYSINIT のバブルソートに使用
FreeBSD、SYSINIT のバブルソートをマージソートに変更

 
cosine20 2023-08-31

ああ、それと同じ文脈にある記事なのですね。興味深いです。