この記事について海外で公開された情報をもとにAIが要約・解説した記事です。原文の翻訳ではありません。正確な内容は記事末尾の出典元をご確認ください。
この記事の要点
  • 推論ポッドの起動時にECRやS3などから都度ダウンロードしていた待ち時間を削減する機能
  • 重みキャッシュとイメージキャッシュの2機能で、片方だけでも有効化できる
  • 57〜145GBのモデルでスケールアウト約60%高速化、イメージ取得は最大97%削減

何が発表されたのか

AWSは、Amazon SageMaker HyperPod上の推論(Amazon SageMaker Inference on HyperPod)向けに「モデルキャッシュ」を発表しました。推論ポッドが起動してトラフィックを処理できるようになるまでの待ち時間、いわゆるコールドスタートを短縮する機能です。HyperPodはKubernetes上で大規模なモデル学習・推論を動かすための仕組みで、ポッドの起動時にコンテナイメージとモデルの重みを毎回ダウンロードする必要がありました。

この待ち時間は2つのダウンロードに支配されています。1つはAmazon Elastic Container Registry(ECR)からの推論サーバーのコンテナイメージ、もう1つはAmazon S3、Amazon FSx for Lustre、HuggingFace Hubなどから取得するモデルの重みです。原文によれば、vLLMやLMIといった推論サーバーのイメージは数GB規模で取得に5〜7分、145GBのモデルをS3から取得する場合はさらに20分以上かかるといいます。

600GBを超えるDeepSeek-R1のような大規模モデルでは、1件のリクエストを処理するまでに30分以上かかると説明されています。モデルキャッシュを有効にすると、ポッドはローカルのNVMeストレージから約7GB/sで読み出せるようになり、数秒でトラフィックを処理し始められるとしています。

2つのキャッシュ機能

モデルキャッシュは「重みキャッシュ」と「イメージキャッシュ」という独立した2つの機能で構成されます。どちらか一方だけを有効にすることも、両方を同時に有効にすることもできます。設定は既存のInferenceEndpointConfigまたはJumpStartModelリソースにmodelCacheConfigセクションを追加するだけで、追加のインフラ構築は不要とされています。

重みキャッシュでは、HyperPod Inference OperatorがModelDataCacheConfigリソースを自動作成し、指定したソースから対象ノードのローカルNVMeへ重みを事前ダウンロードします。ダウンロードが完了したノードにはcache-readyというラベルが付き、すべての対象ノードがcache-readyになるまで推論デプロイは作成されません。キャッシュは同じノード上でのポッド再起動をまたいで保持されるとしています。

イメージキャッシュでは、OperatorがDaemonSetを作成して対象ノードすべてにコンテナイメージを事前取得します。重みキャッシュと異なり、デプロイの作成はブロックしません。キャッシュ済みのノードではECRからの取得を完全にスキップでき、5〜7分の短縮につながります。同じイメージを使う複数のデプロイは1つのキャッシュリソースを共有し、参照がなくなった時点でOperatorが削除します。

フォールバックとCRD管理

両機能ともスケジューリングは「必須」ではなく「優先」で行われます。ポッドはキャッシュ済みノードを優先しますが、起動をブロックされることはありません。急激なスケールアウトでキャッシュ済みノード数を超えた場合などは、従来どおりS3やFSxから重みを読み込み、ECRからイメージを取得します。原文はこれを、障害でもユーザー介入でもなく、通常のダウンロード時間を超える劣化もないと説明しています。

キャッシュのライフサイクルは2つのCustom Resource Definition(CRD)で管理されます。Operatorが自動作成・管理するため、利用者が直接作成する必要はありません。kubectl get modeldatacacheconfigやkubectl get inferenceimagecacheで状態を確認でき、原文ではSTATEやPHASE、TARGET、READYといった列を持つ出力例が示されています。

モデルの取得元を変更した場合、たとえば新しいS3パスを指定した場合は、Operatorが新しいキャッシュを作成し、更新後のデプロイをロールアウトしてから古いキャッシュを削除します。イメージ変更も同様で、古いデータが残らないゼロダウンタイムの切り替えになるとしています。

ベンチマークと制約

原文によれば、57〜145GBのモデルでは重みキャッシュによりスケールアウトが約60%高速化しました。イメージキャッシュはコールド時のイメージ取得から2分以上を削減し、毎回ECRから取得する場合と比べて最大97%の削減を達成したとしています。モデルが大きいほど、ネットワーク経由でダウンロードしていたデータ量が多いため効果は大きくなり、600GB超のDeepSeek-R1では30分以上かかっていたダウンロードがなくなるといいます。

一方で注意点も示されています。重みキャッシュはノード単位で保持されるため、NVMeの消費量はノード数に比例して増えます。初回のキャッシュ作成時にはリモートソースからのダウンロードが必要で、そのコストは一度だけ発生します。NVMeの容量は有限で、たとえば300GBのモデルに対してNVMeが250GBしかないインスタンスタイプではキャッシュできません。

取得元の更新は自動検出されない点も明記されています。同じS3パスでモデルファイルを更新しても、InferenceEndpointConfigのspecを変更しなければOperatorはキャッシュ済みのバージョンを提供し続けます。新しい重みを反映するには、モデルパスの変更やバージョン接尾辞の追加などspecの更新が必要です。

重みキャッシュとイメージキャッシュの違い
項目重みキャッシュイメージキャッシュ
対象データモデルの重み推論サーバーのコンテナイメージ
管理するCRDModelDataCacheConfigModelImageCache
デプロイ作成への影響全対象ノードがcache-readyになるまで待機作成をブロックしない
原文のベンチマーク57〜145GBでスケールアウト約60%高速化ECR取得を最大97%削減、2分以上短縮
キャッシュの共有ノードごとに個別コピー同一イメージの複数デプロイで共有
原文からの引用
Benchmarks across models ranging from 57–145 GB show around 60 percent faster scale-out when weights caching is enabled. The image cache can remove over two minutes of cold image-pull time, typically achieving up to a 97 percent reduction compared to pulling fresh from ECR on every pod start.

57〜145GBのモデルを対象としたベンチマークでは、重みキャッシュを有効にするとスケールアウトが約60%高速化した。イメージキャッシュはコールド時のイメージ取得時間から2分以上を削減し、ポッド起動のたびにECRから新規取得する場合と比べて通常最大97%の削減を達成する。

今後の見通し

今回の発表は一般提供(GA)であり、Amazon SageMaker HyperPodが利用可能なすべてのリージョンで使えるとされています。今後は、実際の運用環境でのスケールアウト時間やNVMe消費量、モデル更新時のロールアウト挙動に関する知見が共有されていくと考えられます。導入を判断するには、利用予定のインスタンスタイプのNVMe容量、対象モデルのサイズ、スケールアウトの頻度を突き合わせた見積もりが有効です。また、HyperPodが提供されているリージョンの一覧や、JumpStart経由で設定した場合の挙動の詳細は原文では十分に示されていないため、公式ドキュメントで確認する必要があります。

日本の開発者・IT企業にとっての意味

日本企業がSageMaker HyperPodでLLM推論を運用する場合、コールドスタートはオートスケーリングの実効性を左右する問題でした。HPAが数秒で反応しても、実際に追加トラフィックを処理できるまで25〜30分以上かかるなら、急なアクセス増には事実上対応できず、GPUを余分に常時確保する必要が生じます。モデルキャッシュはこの待ち時間を秒単位に縮めるため、ピーク時の余剰プロビジョニングを減らせる可能性があります。一方、重みキャッシュはノードごとにNVMeを消費するため、インスタンスタイプとノード数から容量を見積もる設計が欠かせません。取得元の更新が自動検出されない点も、モデル更新手順にspecの変更を組み込む必要があることを意味します。既存のInferenceEndpointConfigに設定を追加するだけで導入できる点は、移行コストを抑えたいチームにとって現実的な選択肢になりそうです。

気になる点

既存のデプロイに設定を足すだけで使えますか。
はい。既存のInferenceEndpointConfigまたはJumpStartModelリソースにmodelCacheConfigセクションを追加して適用するだけで、追加のインフラ構築は不要とされています。重みキャッシュとイメージキャッシュは個別に有効化でき、イメージだけをキャッシュしたい場合はweightsCacheを省略するかfalseに設定します。
日本リージョンでも利用できますか。
原文では、Amazon SageMaker HyperPodが利用可能なすべてのリージョンで一般提供されると説明されています。ただし、HyperPod自体がどのリージョンで提供されているかの一覧は原文に記載がないため、自社の利用リージョンで使えるかはAWSの公式ドキュメントで確認する必要があります。
モデルの重みを更新したら自動で反映されますか。
いいえ。同じS3パスでモデルファイルを更新しても、InferenceEndpointConfigのspecを変更しなければOperatorはキャッシュ済みのバージョンを提供し続けます。新しい重みを反映するには、モデルパスの変更やバージョン接尾辞の追加などspecを更新する必要があります。

用語解説

コールドスタート
ポッドの起動から推論リクエストを処理できるようになるまでの待ち時間。コンテナイメージやモデル重みのダウンロードが主因となる。
NVMe
高速なSSD接続規格。ここでは各ノードに搭載されたローカルストレージを指し、ネットワーク経由より高速に読み出せる。
Amazon ECR
Amazon Elastic Container Registry。コンテナイメージを保管・配布するAWSのマネージドサービス。
CRD
Custom Resource Definition。Kubernetesに独自のリソース種別を追加する仕組み。ここではキャッシュ管理に使われる。
DaemonSet
Kubernetesのリソース種別の一つ。全ノードまたは対象ノードに同じPodを配置する。
HorizontalPodAutoscaler
負荷に応じてPod数を自動で増減させるKubernetesの仕組み。略称はHPA。

出典

Reduce inference cold starts on Amazon SageMaker HyperPod with model caching

Amazon Web Services / Kareem Syed-Mohammed / 2026年9月11日

https://aws.amazon.com/blogs/machine-learning/reduce-inference-cold-starts-on-amazon-sagemaker-hyperpod-with-model-caching

AI導入も顧問も、お任せください

何から手をつけるか、どこまでAIに任せるか。自社の業務に合わせて整理し、導入から運用まで伴走します。相談だけでも構いません。

AI導入について相談する