View a markdown version of this page

コストと同時実行数を制御する - AWS Deadline クラウド

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

コストと同時実行数を制御する

従来のレンダーファームでは、固定インフラストラクチャによって同時実行数とコストに間接的な制限が生じます。共有ファイルシステムのスループットは、ワーカーがデータにアクセスできる速度を制限します。固定数のレンダリングノードは、同時に実行されるジョブの数を制限します。これらのボトルネックはレンダリングを遅くしますが、予期しない支出も防止します。

AWS Deadline Cloud を使用すると、コストと同時実行の両方を正確に直接制御できます。ハードドルの上限を適用する予算とピーク同時実行を制限するフリート設定を使用して、ジョブを迅速に完了するように迅速にスケールできます。従来のファームとは異なり、レンダリング速度をコスト管理に交換する必要はありません。両方を使用できます。

Deadline Cloud では、固定数のソフトウェアライセンスのマッチングなど、他の理由でリソースの使用を制限することもできます。次のメカニズムはそれぞれ異なるレベルで動作します。組織の要件に合わせて組み合わせることができます。

コストと同時実行コントロールの比較

次の表は、Deadline Cloud で使用できるコントロールをまとめたものです。制限する内容に基づいて 1 つ以上の を選択します。

コントロール レベル その内容 次の用途に適しています
フリートの最大ワーカー数 Fleet キューに入れられているジョブの数に関係なく、フリートで同時に実行できるワーカーの合計数を制限します。 フリート内のすべてのジョブにおけるピークコンピューティングのハードキャップ。固定数のレンダリングノードの自然制限を置き換えます。
ジョブの最大ワーカー数 ジョブ 1 つのジョブに割り当てられたワーカーの数を制限します。フリート内の他のワーカーは、他のジョブで引き続き使用できます。 小さなジョブが待機している間、単一の大きなジョブがフリート全体を消費するのを防ぎます。
リソースの制限 ファームまたはキュー 共有リソース (ソフトウェアライセンスやファイルサーバーなど) を同時に使用できるタスクの数を制限します。 ジョブまたはキュー間で共有される制約付きリソースとの同時実行の一致。ファイルシステムのスループットまたはライセンス数の自然な制限を置き換えます。
制限アクションを含む予算 [キュー] キューの累積支出を追跡します。支出がしきい値に達すると、アクションは新しい作業のスケジュールを停止するか、実行中の作業をキャンセルします。 プロジェクトまたは期間の合計支出に対してドルの上限を適用する。
ジョブの優先度 ジョブ 複数のジョブが同じワーカーと競合するときに最初に処理されるジョブを決定します。 フリートの容量を変更せずに、重要度の低いジョブの前に緊急の作業プロセスを確保します。

フリートの最大ワーカー数

フリートの最大ワーカー数設定は、同時に実行できるワーカーの数を制限します。フリートがこの最大値に達すると、より多くのジョブが待機している場合でも、新しいワーカーの開始は停止します。この設定は、固定サイズのレンダーファームの自然同時実行制限の最も直接的な置き換えです。

この設定は、フリートレベルでピークコンピューティングコストを制限する場合に使用します。たとえば、ワーカーの最大数を 50 に設定すると、キューの深さに関係なく、50 を超える同時インスタンスに対して料金が発生することはありません。

詳細については、「自動スケーリング設定」を参照してください。

ジョブの最大ワーカー数

ジョブの最大max-worker-countオプションは、その特定のジョブを処理できるワーカーの数を制限します。最大値に達すると、フリートでワーカーが使用可能であっても、ジョブにワーカーが割り当てられなくなります。キュー内の他のジョブでも、残りのワーカーを使用できます。

この設定は、単一の大きなジョブがフリートを独占しないようにする場合に使用します。たとえば、フリートに 100 人のワーカーがいて、 で 10,000 フレームのジョブを送信した場合--max-worker-count 50、残りの 50 人のワーカーは他のジョブで引き続き使用できます。送信後にこの値を変更することもできます。

deadline bundle submit my_job --max-worker-count 50

リソースの制限

リソース制限は、フローティングソフトウェアライセンスやスループットが制限されたファイルサーバーなど、制約のあるリソースを同時に使用できるタスクの数を制限します。制限はファームレベルで定義され、1 つ以上のキューに関連付けられます。制限要件を宣言するジョブのステップは、使用可能な数までのタスクのみを実行します。

容量が固定された共有リソースがある場合は、制限を使用します。たとえば、レンダラーのフローティングライセンスが 25 ある場合は、25 の制限を作成します。この制限により、それを共有するすべてのキューでそのライセンスを同時に使用するタスクは 25 個以下になります。

詳細については、「Deadline Cloud Developer Guide」の「Create resource limits for jobs」を参照してください。

制限アクションを含む予算

Deadline Cloud 予算は、一定期間のキューの累積推定支出を追跡します。支出がしきい値に達したときにトリガーする制限アクションを設定します。使用可能なアクションは次のとおりです。

  • 新しい作業のスケジュールを停止する – タスクの実行は完了しましたが、フリートは新しいタスクの受け入れを停止します。

  • すべての作業をすぐに停止する – 実行中のすべてのタスクはキャンセルされ、新しいタスクは割り当てられません。

プロジェクトまたは請求期間にドルの上限を適用する場合は、予算を使用します。異なるアクションで複数のしきい値を作成できます。例えば、現在の作業が正常に完了できるように残りの 5,000 USD でスケジューリングを停止し、支出が残りの 0 USD に達した場合はすべての作業をキャンセルします。

詳細については、「予算によるコストの管理」を参照してください。

ジョブの優先度

ジョブの優先度は、複数のジョブが同じキュー内のワーカーと競合するときにジョブが処理される順序に影響します。優先度の範囲は 0~100 で、通常、数値が大きいほど最初に処理されます。優先度が同じジョブは、受信した順序で処理されます。

Priority は、同時実行数やコストを直接制限しません。代わりに、フリートがキャパシティーにあるときに、最も重要な作業が最初にワーカーを取得するのに役立ちます。優先度とフリートの最大ワーカー数を組み合わせて、最初に実行されるジョブと、合計で実行されるコンピューティング量の両方を制御します。

使用レートを制限する

フリートのコストは実行中のワーカーから発生するため、ワーカーの最大数を設定することでフリートの使用レートを制限できます。2 つのコントロールが連携します。

  • フリートの最大ワーカー数は、一度に実行できるワーカーの数を制限することで、ピーク使用率を設定します。ワーカーの時間単位のコストを構成するものの詳細については、「」を参照してくださいサービスマネージドフリートのコストモデルを理解する

  • 予算は累積支出を制限します。予算は、レートではなく一定期間の合計推定支出を追跡するため、フリートの容量上限とともにハードドル制限を追加します。

スポットキャパシティとオンデマンドキャパシティを混在させる

各サービスマネージドフリートは、スポット、オンデマンド、または待機と保存の 1 つのインスタンス市場オプションを使用します。市場オプションを組み合わせるには、オプションごとに個別のフリートを作成し、フリートを同じキューに関連付けます。詳細については、「サービスマネージドフリート」および「キューとフリートを関連付ける」を参照してください。

キューに複数のフリートがある場合、それらのフリート間でジョブが均等に分散されます。代わりに、1 つのフリートをプライマリ容量として扱い、もう 1 つのフリートをオーバーフローとして扱うには、フリートの最大ワーカー数を調整します。「Deadline Cloud Developer Guide」のキャパシティマネージャーのサンプルは、ハイブリッドの Wait and Save plus Spot 設定の調整を自動化します。

繁忙期に一時的に制限を引き上げる

これらのコントロールはすべていつでも調整可能です。ジョブアクティビティが増加している間は、一時的に制限を増やすことができます。たとえば、配信期限の前にフリートの最大ワーカー数を増やし、予算のしきい値を増やし、スタンバイワーカーを追加してジョブ開始のレイテンシーを減らすことができます。期限が切れたら、設定を再度下げます。

Deadline Cloud コンソールからフリートの自動スケーリング設定と予算を更新できます。勤務時間中にスタンバイワーカー数を増やすなど、スケジュールに従って容量を変更するには、GitHub の fleet_standby_scheduling のサンプル CloudFormation テンプレートを使用します。アカウントのサービスクォータで許可されている容量よりも多くの容量が必要な場合は、「」を参照してくださいのクォータ Deadline Cloud

コントロールを組み合わせる

それぞれのコントロールは 1 つのニーズに対応します。以下のシナリオは、コントロールを組み合わせる方法を示しています。

「1 つの巨大なジョブが小さなジョブを枯渇させたくありません」

大規模なジョブ--max-worker-countに設定して、他の作業のフリート容量を予約します。必要に応じて、小さいジョブでより高い優先度を設定します。

「コスト管理と公平配分の組み合わせが欲しい」

フリートの最大ワーカー数を設定し、大きなジョブにジョブごとの最大ワーカー数を使用し、安全ネットとして予算を追加します。この組み合わせにより、ピーク容量制限、ジョブごとの公平性、ドルバックストップが得られます。