本文へスキップ

AI運用の判断と根拠を引く

トップへ戻る

Spot/preemptible GPUの中断前提設計と途中状態の保存地点経済性

用語・参照用語・参照公式仕様のみ公式仕様のみ現行現行として扱う

記事状態: 公開 · 最終確認: 2026-10-20

要点

「Spot/preemptible GPUは中断と再取得待ちを通常系として設計し、周期途中状態の保存地点を主手段、提供元通知をbest-effortの追加退避signalとして扱う。採否は時間単価だけでなく、失われるcompute、途中状態の保存地点 I/O、restart/reload、capacity再取得、失敗時の代替処理、期限リスクを含む実効費用で判断する。」

現在の判断

「Spot/preemptible GPUは中断と再取得待ちを通常系として設計し、周期途中状態の保存地点を主手段、提供元通知をbest-effortの追加退避signalとして扱う。採否は時間単価だけでなく、失われるcompute、途中状態の保存地点 I/O、restart/reload、capacity再取得、失敗時の代替処理、期限リスクを含む実効費用で判断する。」

どこまで当てはまるか

Spot/preemptible GPUの中断前提設計と途中状態の保存地点経済性

詳しく理解する

主要記述・判断

Spot/preemptible GPUは「安価な通常GPU」ではなく、実行中断・再取得失敗・再起動待ちを通常系として扱うcapacity classです。中断通知の猶予は提供元ごとに異なり、通知自体がbest-effortである場合もあります。このため、途中状態の保存地点設計は通知を受けてから初めて保存する方式だけに依存せず、平常時の周期途中状態の保存地点と、中断signal受信時のbest-effort final 途中状態の保存地点を組み合わせます。

AWS EC2 Spotは、stop/terminateの前に通常2分のinterruption noticeを出しますが、通知はbest effortであり、hibernateでは2分の猶予なしに処理が始まります。AWSはrebalance recommendationをより早い予兆として利用できる場合がある一方、2分noticeより早く来る保証はないと説明しています。

Google Compute Engine Spot VMは、2026年時点でpreemption notice durationを120秒または0秒として作成時に設定できます。0秒がdefaultで、その場合はdedicated notice delayがなく、その後のbest-effort shutdown periodは最大30秒です。120秒を選ぶ場合はworkload側でpreemption 付随情報を監視してprogressを保存できます。GPU付きSpot VMもcapacity 利用可能性に依存し、managed instance groupが再作成を試みてもGPU resourceが利用可能である保証はありません。

Azure Spot VMはcapacityまたはprice条件によりevictされ得て、作成後の利用可能性 SLAはありません。Scheduled EventsのPreempt signalはeviction前の短い猶予を提供しますが、複数工程の制御は即時evictionやreplacement capacity不足も想定する必要があります。

したがって、Spot GPUの採否は単純な「時間単価の割引率」ではなく、失われるcompute、途中状態の保存地点 I/O、restart/reload、reacquisition wait、失敗時の代替処理 capacity、deadline/SLO penaltyを含むexpected costで評価します。

実装・運用

  • workloadごとに checkpoint_bytes, checkpoint_write_seconds, checkpoint_load_seconds, restart_seconds, expected_reacquisition_seconds, checkpoint_interval_seconds, deadline, fallback_policy を計測値として持ちます。
  • 周期途中状態の保存地点をprimary durability mechanismとし、Spot interruption/rebalance/preemption signalでは新規batch投入停止、最新状態 flush、final 途中状態の保存地点 attempt、worker drainを実行します。
  • 途中状態の保存地点はgeneration単位でimmutableに保存し、全shard/rankの完了後にcommit markerを確定します。復旧時は最新時刻ではなく、完全性検証済みの最新generationを選びます。
  • interruption handlerは提供元ごとのnotice 条件・契約を分離します。AWS 2-minute notice、GCP 120秒/0秒設定とbest-effort shutdown、Azure Scheduled Eventsを同じ固定処理待ち時間の上限として実装しません。
  • replacement strategyを same_pool -> alternate_zone/pool -> alternate GPU SKU -> standard/on-demand fallback -> queue/defer のように明示し、各段階の最大待機時間とcost ceilingを定義します。
  • interruption testを定期実施します。AWSはFault Injection Service/EC2 interruption initiation、GCPはpreemption handling test、Azureはevictionを想定した複数工程の制御 testを使い、途中状態の保存地点生成からrestore、data-loader/sampler/RNG/optimizer 状態、distributed membershipまで結果の照合します。
  • 経済性は少なくとも次で比較します。effective_spot_cost = spot_compute_cost + checkpoint_storage_IO + restart/reload_cost + expected_lost_compute + expected_reacquisition_idle + fallback_cost + deadline/SLO penalty。これがstandard/on-demandの総費用・期限リスクを下回るworkloadだけをSpot適格とします。
  • 途中状態の保存地点 intervalは固定値を全jobへ配らず、途中状態の保存地点 costとinterruption exposureを計測してworkload class別に設定します。長時間job、大規模状態、高い再取得待ちでは短縮余地を評価し、途中状態の保存地点 I/Oがtraining 単位時間あたりの処理量を損なう場合は非同期/増分途中状態の保存地点等を検討します。
  • GPU capacityの利用可能性は利用枠と別に監視します。利用枠があってもSpot capacityがあるとは限らないため、launch 失敗/reacquisition latencyを独立評価指標として保存します。

適用境界

提供元の通知時間は契約・機能・設定・termination behaviorに依存します。AWSの2分noticeはhibernateでは同じ猶予を意味しません。GCP Spot VMは120秒noticeを選べる現行機能がありますがdefaultは0秒であり、古い「常に30秒」の理解を固定しません。AzureもScheduled Eventsを受信できることをcapacity保証や自動再開保証と解釈しません。

途中状態の保存地点経済性はworkload依存です。短時間batchや再実行が安いstateless 推論では途中状態の保存地点自体が不要な場合があります。一方、大規模trainingでoptimizer 状態が巨大な場合、頻繁なfull 途中状態の保存地点はI/Oと保存領域 costを増やします。Spot採用を全GPU workloadの既定値にしません。

出典 / 出典・来歴 locators

よくある失敗・反証

  • 最大の失敗は、途中状態の保存地点 intervalを提供元の通知時間と同一視することです。通知がbest-effort、短時間、または0秒設定の場合、途中状態の保存地点 sizeが大きいtraining/推論 状態を中断時だけで安全に永続化できません。通常運転中にdurable 途中状態の保存地点を確定し、通知は追加の最終保存・drain・新規work停止に使います。

    第二の失敗は、VM再起動とGPU再取得を同義に扱うことです。Spot VMが停止・削除された後、同じGPU SKU/zoneで直ちにcapacityを再取得できるとは限りません。復旧設計には同一pool再試行だけでなく、別zone/instance type、standard/on-demand 失敗時の代替処理、job queue待機、deadline超過時の昇格条件が必要です。

    第三の失敗は、途中状態の保存地点を「書けた」で完了扱いすることです。中断直前のpartial upload、object listの更新順序、distributed rank間の世代不一致により、復旧時に破損または不完全途中状態の保存地点を掴む可能性があります。途中状態の保存地点 generation ID、atomic/commit marker、manifest/hash、結果の照合を用い、再開可能な世代だけを確定します。

  • Spot discountが大きくても、中断率・GPU scarcity・deadlineが厳しい環境ではeffective costがstandard/on-demandを上回り得ます。逆に、短いjob、十分なpool diversification、低いrestore cost、elastic worker構成では中断コストが小さく、Spot比率を高められます。

    過去の中断率だけから将来の利用可能性を保証できません。capacityはregion/zone/SKU/timeで変動し、提供元のallocation behaviorも変化します。経済性モデルは実測のinterruption/reacquisition 稼働状況の記録で継続更新します。

まだ確認できていないこと

  • EA-750-UNKNOWN-01
    • 対象GPU SKU/region/zoneごとの実測interruption rateとreacquisition latency分布
    • 途中状態の保存地点 I/Oがshared 保存領域へ与えるpeak負荷とthrottling
    • distributed training frameworkごとのrank loss/再開 semantics
    • GPU SKU変更失敗時の代替処理時のモデル compatibilityとperformance差
    • deadline penaltyを含むbusiness costの換算方法
    • 提供元 pricing/discount変動を含むbreak-even threshold

根拠資料

更新履歴

  1. EA-750-RESEARCH-20261020-R1: 正式な 監査/publication 対応付け

出典ID・検証情報・機械可読データ

根拠の種類と情報の鮮度は、ラベルとアイコンで確認できます。

記事ID
EA-750
最終確認日
2026-10-20
提供元・モデル・プラン・利用環境
—
対象地域
—
元資料の全文と収録照合記録
主要claim

Spot/preemptible GPUは「安価な通常GPU」ではなく、実行中断・再取得失敗・再起動待ちを通常系として扱うcapacity classです。中断通知の猶予はproviderごとに異なり、通知自体がbest-effortである場合もあります。このため、checkpoint設計は通知を受けてから初めて保存する方式だけに依存せず、平常時の周期checkpointと、中断signal受信時のbest-effort final checkpointを組み合わせます。

AWS EC2 Spotは、stop/terminateの前に通常2分のinterruption noticeを出しますが、通知はbest effortであり、hibernateでは2分の猶予なしに処理が始まります。AWSはrebalance recommendationをより早い予兆として利用できる場合がある一方、2分noticeより早く来る保証はないと説明しています。

Google Compute Engine Spot VMは、2026年時点でpreemption notice durationを120秒または0秒として作成時に設定できます。0秒がdefaultで、その場合はdedicated notice delayがなく、その後のbest-effort shutdown periodは最大30秒です。120秒を選ぶ場合はworkload側でpreemption metadataを監視してprogressを保存できます。GPU付きSpot VMもcapacity availabilityに依存し、managed instance groupが再作成を試みてもGPU resourceが利用可能である保証はありません。

Azure Spot VMはcapacityまたはprice条件によりevictされ得て、作成後のavailability SLAはありません。Scheduled EventsのPreempt signalはeviction前の短い猶予を提供しますが、orchestrationは即時evictionやreplacement capacity不足も想定する必要があります。

したがって、Spot GPUの採否は単純な「時間単価の割引率」ではなく、失われるcompute、checkpoint I/O、restart/reload、reacquisition wait、fallback capacity、deadline/SLO penaltyを含むexpected costで評価します。

運用上の意味・failure

最大のfailureは、checkpoint intervalをproviderの通知時間と同一視することです。通知がbest-effort、短時間、または0秒設定の場合、checkpoint sizeが大きいtraining/inference stateを中断時だけで安全に永続化できません。通常運転中にdurable checkpointを確定し、通知は追加の最終保存・drain・新規work停止に使います。

第二のfailureは、VM再起動とGPU再取得を同義に扱うことです。Spot VMが停止・削除された後、同じGPU SKU/zoneで直ちにcapacityを再取得できるとは限りません。復旧設計には同一pool再試行だけでなく、別zone/instance type、standard/on-demand fallback、job queue待機、deadline超過時の昇格条件が必要です。

第三のfailureは、checkpointを「書けた」で完了扱いすることです。中断直前のpartial upload、object listの更新順序、distributed rank間の世代不一致により、復旧時に破損または不完全checkpointを掴む可能性があります。checkpoint generation ID、atomic/commit marker、manifest/hash、readbackを用い、resume可能な世代だけを確定します。

具体的control / implementation implication
  • workloadごとに checkpoint_bytes, checkpoint_write_seconds, checkpoint_load_seconds, restart_seconds, expected_reacquisition_seconds, checkpoint_interval_seconds, deadline, fallback_policy を計測値として持ちます。
  • 周期checkpointをprimary durability mechanismとし、Spot interruption/rebalance/preemption signalでは新規batch投入停止、最新state flush、final checkpoint attempt、worker drainを実行します。
  • checkpointはgeneration単位でimmutableに保存し、全shard/rankの完了後にcommit markerを確定します。復旧時は最新時刻ではなく、完全性検証済みの最新generationを選びます。
  • interruption handlerはproviderごとのnotice contractを分離します。AWS 2-minute notice、GCP 120秒/0秒設定とbest-effort shutdown、Azure Scheduled Eventsを同じ固定timeoutとして実装しません。
  • replacement strategyを same_pool -> alternate_zone/pool -> alternate GPU SKU -> standard/on-demand fallback -> queue/defer のように明示し、各段階の最大待機時間とcost ceilingを定義します。
  • interruption testを定期実施します。AWSはFault Injection Service/EC2 interruption initiation、GCPはpreemption handling test、Azureはevictionを想定したorchestration testを使い、checkpoint生成からrestore、data-loader/sampler/RNG/optimizer state、distributed membershipまでreadbackします。
  • 経済性は少なくとも次で比較します。effective_spot_cost = spot_compute_cost + checkpoint_storage_IO + restart/reload_cost + expected_lost_compute + expected_reacquisition_idle + fallback_cost + deadline/SLO penalty。これがstandard/on-demandの総費用・期限リスクを下回るworkloadだけをSpot適格とします。
  • checkpoint intervalは固定値を全jobへ配らず、checkpoint costとinterruption exposureを計測してworkload class別に設定します。長時間job、大規模state、高い再取得待ちでは短縮余地を評価し、checkpoint I/Oがtraining throughputを損なう場合は非同期/増分checkpoint等を検討します。
  • GPU capacityのavailabilityはquotaと別に監視します。quotaがあってもSpot capacityがあるとは限らないため、launch failure/reacquisition latencyを独立metricとして保存します。
適用境界

providerの通知時間は契約・機能・設定・termination behaviorに依存します。AWSの2分noticeはhibernateでは同じ猶予を意味しません。GCP Spot VMは120秒noticeを選べる現行機能がありますがdefaultは0秒であり、古い「常に30秒」の理解を固定しません。AzureもScheduled Eventsを受信できることをcapacity保証や自動再開保証と解釈しません。

checkpoint経済性はworkload依存です。短時間batchや再実行が安いstateless inferenceではcheckpoint自体が不要な場合があります。一方、大規模trainingでoptimizer stateが巨大な場合、頻繁なfull checkpointはI/Oとstorage costを増やします。Spot採用を全GPU workloadの既定値にしません。

counterevidence / limitations

Spot discountが大きくても、中断率・GPU scarcity・deadlineが厳しい環境ではeffective costがstandard/on-demandを上回り得ます。逆に、短いjob、十分なpool diversification、低いrestore cost、elastic worker構成では中断コストが小さく、Spot比率を高められます。

過去の中断率だけから将来のavailabilityを保証できません。capacityはregion/zone/SKU/timeで変動し、providerのallocation behaviorも変化します。経済性モデルは実測のinterruption/reacquisition telemetryで継続更新します。

OPEN_UNKNOWN
  • 対象GPU SKU/region/zoneごとの実測interruption rateとreacquisition latency分布
  • checkpoint I/Oがshared storageへ与えるpeak負荷とthrottling
  • distributed training frameworkごとのrank loss/resume semantics
  • GPU SKU変更fallback時のmodel compatibilityとperformance差
  • deadline penaltyを含むbusiness costの換算方法
  • provider pricing/discount変動を含むbreak-even threshold
SAFE_WORDING

「Spot/preemptible GPUは中断と再取得待ちを通常系として設計し、周期checkpointを主手段、provider通知をbest-effortの追加退避signalとして扱う。採否は時間単価だけでなく、失われるcompute、checkpoint I/O、restart/reload、capacity再取得、fallback、期限リスクを含む実効費用で判断する。」

Source / provenance locators
  • EVD-EA-750-URL-FF704E292777研究資料研究資料根拠の出所: SOURCE_PACKET_REFERENCE

    AWS EC2 User Guide, Spot Instance interruption notices:

    裏付ける内容
    —
    確認日
    —
    出典・実験ID
    SRC-EA-750-URL-FF704E292777
    検証箇所
    Source / provenance locators · - AWS EC2 User Guide, Spot Instance interruption notices: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-instance-termination-notices.html
    適用範囲
    Source / provenance locators
    出典・来歴
    SOURCE_PACKET_REFERENCE_PROJECTED
    限界
    元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
  • EVD-EA-750-URL-CE9D11064147研究資料研究資料根拠の出所: SOURCE_PACKET_REFERENCE

    AWS EC2 User Guide, Best practices for EC2 Spot:

    裏付ける内容
    —
    確認日
    —
    出典・実験ID
    SRC-EA-750-URL-CE9D11064147
    検証箇所
    Source / provenance locators · - AWS EC2 User Guide, Best practices for EC2 Spot: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-best-practices.html
    適用範囲
    Source / provenance locators
    出典・来歴
    SOURCE_PACKET_REFERENCE_PROJECTED
    限界
    元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
  • EVD-EA-750-URL-C84E54048392研究資料研究資料根拠の出所: SOURCE_PACKET_REFERENCE

    AWS EC2 User Guide, Initiate a Spot Instance interruption:

    裏付ける内容
    —
    確認日
    —
    出典・実験ID
    SRC-EA-750-URL-C84E54048392
    検証箇所
    Source / provenance locators · - AWS EC2 User Guide, Initiate a Spot Instance interruption: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/initiate-a-spot-instance-interruption.html
    適用範囲
    Source / provenance locators
    出典・来歴
    SOURCE_PACKET_REFERENCE_PROJECTED
    限界
    元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
  • EVD-EA-750-URL-8F83DA98D931研究資料研究資料根拠の出所: SOURCE_PACKET_REFERENCE

    Google Cloud Compute Engine, Spot VMs:

    裏付ける内容
    —
    確認日
    —
    出典・実験ID
    SRC-EA-750-URL-8F83DA98D931
    検証箇所
    Source / provenance locators · - Google Cloud Compute Engine, Spot VMs: https://docs.cloud.google.com/compute/docs/instances/spot
    適用範囲
    Source / provenance locators
    出典・来歴
    SOURCE_PACKET_REFERENCE_PROJECTED
    限界
    元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
  • EVD-EA-750-URL-BBD568FE8874研究資料研究資料根拠の出所: SOURCE_PACKET_REFERENCE

    Google Cloud Compute Engine, Create and use Spot VMs:

    裏付ける内容
    —
    確認日
    —
    出典・実験ID
    SRC-EA-750-URL-BBD568FE8874
    検証箇所
    Source / provenance locators · - Google Cloud Compute Engine, Create and use Spot VMs: https://docs.cloud.google.com/compute/docs/instances/create-use-spot
    適用範囲
    Source / provenance locators
    出典・来歴
    SOURCE_PACKET_REFERENCE_PROJECTED
    限界
    元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
  • EVD-EA-750-URL-9EE8C8EDE198研究資料研究資料根拠の出所: SOURCE_PACKET_REFERENCE

    Microsoft Azure Architecture Center, Build workloads with Azure Spot Virtual Machines:

    裏付ける内容
    —
    確認日
    —
    出典・実験ID
    SRC-EA-750-URL-9EE8C8EDE198
    検証箇所
    Source / provenance locators · - Microsoft Azure Architecture Center, Build workloads with Azure Spot Virtual Machines: https://learn.microsoft.com/azure/architecture/guide/spot/spot-eviction
    適用範囲
    Source / provenance locators
    出典・来歴
    SOURCE_PACKET_REFERENCE_PROJECTED
    限界
    元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
  • EVD-EA-750-URL-269403C307E6研究資料研究資料根拠の出所: SOURCE_PACKET_REFERENCE

    Microsoft Azure Virtual Machines, About Azure Spot Virtual Machines:

    裏付ける内容
    —
    確認日
    —
    出典・実験ID
    SRC-EA-750-URL-269403C307E6
    検証箇所
    Source / provenance locators · - Microsoft Azure Virtual Machines, About Azure Spot Virtual Machines: https://learn.microsoft.com/azure/virtual-machines/spot-vms
    適用範囲
    Source / provenance locators
    出典・来歴
    SOURCE_PACKET_REFERENCE_PROJECTED
    限界
    元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
  • EA-750-CURRENT-APPROVAL研究資料研究資料根拠の出所: AUDITED_CANONICAL_RESEARCH_PACKET

    現行本文の監査・revision対応

    裏付ける内容
    現行台帳のAUDIT_PASSと候補・revision・本文ハッシュの対応を確認しています。
    確認日
    —
    出典・実験ID
    EA750-CANDIDATE-20261020-1205JST-C1
    検証箇所
    1KqhJtiSb2S84rWmeYVwKcT_76dBwZ_B0ZZuAWQqH0rQ/EA_REVISION_LEDGER#ea_id=EA-750&revision_id=EA-750-RESEARCH-20261020-R1&candidate_id=EA750-CANDIDATE-20261020-1205JST-C1 · EA-750-RESEARCH-20261020-R1
    適用範囲
    —
    出典・来歴
    CURRENT_CANONICAL_APPROVAL_READBACK
    限界
    監査状態と来歴の記録です。外部根拠の最新性や本文の全主張を追加保証しません。
  • EA-750-CURRENT-BODY-READBACK実装資料実装資料根拠の出所: IMPLEMENTATION_READBACK

    現行本文の収録照合

    裏付ける内容
    公開生成入力の本文SHA-256が、監査済み候補に結び付いたハッシュと一致しています。
    確認日
    2026-10-20
    出典・実験ID
    BODY-SHA256:4e11f2af77fe48eb3cc54400dd0fd566c3001ac84166677a4cbe0f2b02133f02
    検証箇所
    content/staging/EA-750.md · 4e11f2af77fe48eb3cc54400dd0fd566c3001ac84166677a4cbe0f2b02133f02 · EA-750-RESEARCH-20261020-R1
    適用範囲
    —
    出典・来歴
    CURRENT_APPROVED_BODY_HASH_MATCH
    限界
    本文の同一性の検査です。外部システムの挙動や全主張の真偽を実証したものではありません。
出典ID
EA750-CANDIDATE-20261020-1205JST-C1, SRC-EA-750-URL-FF704E292777, SRC-EA-750-URL-CE9D11064147, SRC-EA-750-URL-C84E54048392, SRC-EA-750-URL-8F83DA98D931, SRC-EA-750-URL-BBD568FE8874, SRC-EA-750-URL-9EE8C8EDE198, SRC-EA-750-URL-269403C307E6, BODY-SHA256:4e11f2af77fe48eb3cc54400dd0fd566c3001ac84166677a4cbe0f2b02133f02
追跡中のUNKNOWN ID
EA-750-UNKNOWN-01
再確認のきっかけ
正式な 改訂版/publication 状態 change · 本文 成果物 hash change · 出典 現行性 change · new contradiction or 実装 結果の照合

機械検査: 通過 — 機械検査の結果です。情報の正確性や実行の承認を保証するものではありません。

    同じ記事IDの機械可読データです。