すべてのプロダクト
Search
ドキュメントセンター

Function Compute:インスタンスタイプと使用モード

最終更新日:Feb 08, 2025

Function Computeは、CPUインスタンスとGPU高速化インスタンスを提供します。 両方のタイプのインスタンスは、オンデマンドモードとプロビジョニングモードで使用できます。 オンデマンドインスタンスは、実際の実行期間に基づいて課金されます。 オンデマンドインスタンスをインスタンス同時実行機能とともに使用して、リソース使用率を向上させることができます。 プロビジョニングされたインスタンスの課金は、Function Computeがプロビジョニングされたインスタンスを開始すると開始され、インスタンスをリリースすると終了します。 プロビジョニングされたインスタンスは、コールドスタートを効果的に軽減できます。 このトピックでは、function Computeの関数インスタンスのタイプ、使用モード、課金方法、および仕様について説明します。

インスタンスタイプ

  • CPUインスタンス: Function Computeの基本インスタンスタイプ。 CPUインスタンスは、トラフィックスパイクや計算負荷の高いワークロードがあるシナリオに適しています。

  • GPUアクセラレーションインスタンス: GPUアクセラレーションにTuringアーキテクチャを使用するインスタンス。 GPU高速化インスタンスは、主にオーディオおよびビデオファイル、AIワークロード、画像の処理に使用されます。 このタイプのインスタンスは、負荷をGPUハードウェアにオフロードすることでビジネスを加速します。

    さまざまなシナリオでのGPU高速化インスタンスのベストプラクティスの詳細については、以下のトピックを参照してください。

    重要
    • GPU高速化インスタンスは、コンテナイメージを使用してのみデプロイできます。

    • GPUアクセラレーションインスタンスを使用する場合、DingTalkグループ (グループID: 64970014484) に参加し、テクニカルサポートのために次の情報を提供できます。

      • 会社名などの組織名。

      • Alibaba CloudアカウントのID。

      • GPUアクセラレーションインスタンスを使用するリージョン。 例: 中国 (深セン) 。

      • 携帯電話番号、メールアドレス、DingTalkアカウントなどの連絡先情報。

インスタンスモード

CPUインスタンスとGPUアクセラレーションインスタンスは、オンデマンドモードとプロビジョニングモードをサポートしています。 このセクションでは、2つのモードについて説明します。

オンデマンドモード

概要

オンデマンドインスタンスは、Function Computeによって割り当てられ、リリースされます。 Function Computeは、受け取った関数の呼び出し量に応じて、インスタンスの数を自動的に調整します。 呼び出しが増加するとインスタンスが作成され、呼び出しが減少すると余分なインスタンスが削除されます。 つまり、オンデマンドインスタンスの作成はリクエストによってトリガーされます。 一定期間 (通常3〜5分) 処理のためにリクエストが送信されない場合、オンデマンドインスタンスは破棄されます。 初めてオンデマンドインスタンスを呼び出すときは、インスタンスのコールドスタートが完了するまで待つ必要があります。

デフォルトでは、各Alibaba Cloudアカウントはリージョン内で最大100個のインスタンスを実行できます。 クォータセンターコンソールの一般クォータページに表示される実際のクォータが優先されます。 クォータセンターコンソールでクォータ調整を申請することもできます。

課金方法

オンデマンドインスタンスの課金期間は、リクエストが受信されたときに開始され、リクエストが完全に処理されるまで続きます。 各オンデマンドインスタンスは、一度に1つ以上の要求を処理することができる。 詳細については、「インスタンス同時実行の設定」をご参照ください。

処理のためにリクエストが送信されない場合、インスタンスは割り当てられないため、料金は発生しません。 関数が呼び出された場合にのみ課金されます。 料金と課金の詳細については、「課金の概要」をご参照ください。

説明

ビジネス要件に基づいてインスタンス同時実行機能を使用して、リソース使用率を向上させることができます。 このソリューションを使用すると、複数のタスクが1つのインスタンスで同時に実行されるときに、CPUとメモリがプリエンプティブに共有されます。 このようにして、リソース利用が改善される。

インスタンスの同時実行数 = 1

オンデマンドモードでは、リクエストがインスタンスに到着したときに課金期間が開始され、リクエストが完全に処理されたときに終了します。

image

インスタンスの同時実行数 > 1

この場合、オンデマンドインスタンスの実行期間の測定は、最初の要求が受信されたときに開始され、最後の要求が完全に処理されたときに終了します。 インスタンス同時実行機能はリソースを再利用し、コストを節約します。

image

プロビジョニング済みモード

概要

プロビジョニングモードでは、関数インスタンスの割り当てとリリースを担当します。 プロビジョニングされたインスタンスは、リリースしない限り保持されます。 呼び出し要求は、プロビジョニングされたインスタンスに優先的に配信されます。 プロビジョニングされたインスタンスがすべてのリクエストを処理するのに十分でない場合、Function Computeは過剰なインスタンスを処理するためにオンデマンドインスタンスを割り当てます。 プロビジョニングされたインスタンスを削除する方法の詳細については、「自動スケーリングルールの設定」をご参照ください。

説明

プロビジョニングされたインスタンスは、コールドスタートの軽減に役立ちます。 ビジネス予算に基づいて、プロビジョニングされたインスタンスの固定数を指定できます。 さらに、サービスのトラフィックパターンに基づいてスケジュールされた自動スケーリングポリシーを構成したり、サービスが個別のトラフィックパターンを示さない場合はしきい値ベースのスケーリングを選択したりできます。 プロビジョニングされたインスタンスを使用すると、コールドスタートの平均レイテンシが大幅に削減されます。

アイドルモード

CPU インスタンス

CPUインスタンスの状態は、vCPUリソースがインスタンスに割り当てられているかどうかに基づいて、アクティブ状態とアイドル状態に分類されます。 デフォルトでは、アイドルモード機能が有効になっています。

  • アクティブなインスタンス

    インスタンスがリクエストを処理している場合、またはアイドルモード機能が無効になっている場合、インスタンスはアクティブと見なされます。 アイドルモード機能を無効にすると、インスタンスがリクエストを処理しているかどうかに関係なく、vCPUがプロビジョニングされたインスタンスに割り当てられます。 このように、インスタンスは常にアクティブであると見なされるため、バックグラウンドタスクの処理を継続できます。

  • アイドルインスタンス

    アイドルモード機能が有効になっているプロビジョニング済みインスタンスは、リクエストを処理していないときにアイドル状態になります。 Function Computeは、リクエストを処理していないインスタンスのvCPUをフリーズします。 アイドル状態のインスタンスには料金が発生せず、コストが節約されます。 インスタンスにPreFreezeフックが設定されている場合、PreFreezeフックが実行された後、インスタンスはアイドル状態になります。 それ以外の場合、インスタンスはリクエストの処理を完了するとすぐにアイドル状態になります。 インスタンスの状態の詳細については、「Functionインスタンスのライフサイクル」をご参照ください。

ビジネス要件に基づいて、アイドルモード機能を有効にするかどうかを選択できます。

  • コスト

    プロビジョニングされたインスタンスを使用してコールドスタートを軽減し、コストを節約したい場合は、アイドルモード機能を有効にすることを推奨します。 この機能はコールドスタートを最小限に抑えるだけでなく、プロビジョニングされたインスタンスがアイドル状態になったときに消費されたメモリとディスクリソースに対してのみ料金を支払うこともできます。

  • バックグラウンドタスク

    関数がバックグラウンドタスクを実行する必要がある場合は、アイドルモード機能を有効にしないことをお勧めします。 次の項目は、シナリオの例を示します。

    • 一部のアプリケーションフレームワークは、組み込みのスケジューラまたはバックグラウンド機能に依存しています。 一部の依存ミドルウェアは、定期的にハートビートを報告する必要があります。

    • 一部の非同期操作は、GoのGoroutine軽量スレッド、Node.jsの非同期関数、またはJavaの非同期スレッドを使用して実行されます。

GPU アクセラレーションインスタンス

GPUアクセラレーションインスタンスの状態は、GPUリソースがインスタンスに割り当てられているかどうかに基づいて、アクティブ状態とアイドル状態に分類されます。 デフォルトでは、アイドルモード機能が有効になっています。

  • アクティブなインスタンス

    インスタンスがリクエストを処理している場合、またはアイドルモード機能が無効になっている場合、インスタンスはアクティブと見なされます。 アイドルモード機能を有効にすると、リクエストを処理していないインスタンスのGPUがフリーズされます。

  • アイドルインスタンス

    アイドルモード機能が有効になっているプロビジョニング済みインスタンスは、リクエストを処理していないときにアイドル状態になります。

課金方法

  • アクティブなインスタンス

    プロビジョニングされたインスタンスの課金は、作成されたときに開始され、リリースされたときに終了します。 プロビジョニングされたインスタンスがリクエストされ、リリースされます。 したがって、あなたがそれらを解放するまで、彼らは料金を負担し続けます。 さらに、アイドルモード機能が有効になっていない場合、料金は常にアクティブなインスタンスの単価に基づいています。

    image
  • アイドルインスタンス

    アイドルモード機能が有効になっている場合、プロビジョニングされたインスタンスは、リクエストを処理していないときにアイドル状態になります。 アイドル状態のインスタンスの価格は、アクティブなインスタンスの価格よりもはるかに低くなります。 詳細については、「コンバージョン率」をご参照ください。

インスタンス仕様

  • CPU インスタンス

    次の表に、CPUインスタンスの仕様を示します。 必要に応じてインスタンスを設定します。

    vCPU

    メモリサイズ (MB)

    最大コードパッケージサイズ (GB)

    最大関数実行時間 (秒)

    最大ディスクサイズ (GB)

    最大帯域幅 (Gbit/s)

    16に0.05

    注:値は 0.05 の倍数とする必要があります。

    32768に128

    注:値は 64 の倍数とする必要があります。

    10

    86400

    10

    有効な値:

    • 512 4,000 MB です。 デフォルト値です。

    • 10 GBです。

    5

    説明

    vCPUとメモリ容量 (GB) の比率は、1:1から1:4でなければなりません。

  • GPU アクセラレーションインスタンス

    次の表に、GPUアクセラレーションインスタンスの仕様を示します。 必要に応じてインスタンスを設定します。

    説明

    fc.gpu.tesla.1 GPU高速化インスタンスは、NVIDIA T4 gpuを使用するインスタンスと同様のパフォーマンスを提供します。

    インスタンスタイプ

    フル GPU サイズ (GB)

    フルGPUのコンピューティング能力 (TFLOPS)

    利用可能な仕様

    オンデマンドモードがサポートされているかどうか

    通常のプロビジョニングモードがサポートされているかどうか

    アイドルプロビジョニングモードがサポートされているかどうか

    FP16

    FP32

    vGPU メモリ (MB)

    vGPUコンピューティングパワー (GPU)

    vCPU

    メモリサイズ (MB)

    fc.gpu.tesla.1

    16

    65

    8

    有効な値:1024 ~ 16384 (1 GB ~ 16 GB)

    注: 値は1024の倍数でなければなりません。

    この値は、次の式に基づいて計算されます。vGPU計算能力=vGPUメモリ (GB)/16 × フルGPU計算能力。 たとえば、vGPUメモリを5 GBに設定した場合、使用可能な最大vGPU計算能力は5/16 × フルGPU計算能力です。

    注: 計算能力はFunction Computeによって自動的に割り当てられます。

    有効な値: [vGPU memory (GB単位)/2] の値に0.05されます。

    注:値は 0.05 の倍数とする必要があります。 詳細については、「GPU の仕様」をご参照ください。

    有効な値: [vGPUメモリ (GB単位) x 2048] の値に128されます。

    注:値は 64 の倍数とする必要があります。 詳細については、「GPU の仕様」をご参照ください。

    対応

    対応

    対応

    fc.gpu.ada.1

    48

    119

    60

    49152 (48 GB)

    注: 48 GB vGPUメモリ仕様のみがサポートされています。

    デフォルトでは、フルGPUの計算能力が割り当てられます。

    注: 計算能力はFunction Computeによって自動的に割り当てられます。

    8

    注: 8-vCPU仕様のみがサポートされています。

    65536 (64 GB)

    注: 64 GBメモリ仕様のみがサポートされています。

    非対応

    対応

    対応

  • Function ComputeのGPU高速化インスタンスは、次のリソース仕様もサポートしています。

    画像サイズ (GB)

    最大関数実行時間 (秒)

    最大ディスクサイズ (GB)

    最大帯域幅 (Gbit/s)

    Container Registry Enterprise Edition (Standard Edition): 15

    Container Registry Enterprise Edition (Advanced Edition): 15

    Container Registry Enterprise Edition (Basic Edition): 15

    Container Registry Personal Edition (無料): 15

    86400

    10

    5

    説明
    • インスタンスタイプをg1に設定すると、インスタンスタイプをfc.gpu.tesla.1に設定するのと同じ効果が得られます。

    • TeslaシリーズGPUのGPU高速化インスタンスは、中国 (杭州) 、中国 (上海) 、中国 (北京) 、中国 (張家口) 、中国 (深セン) 、日本 (東京) 、米国 (バージニア) 、シンガポールの各リージョンでサポートされています。

    • AdaシリーズGPUのGPU高速化インスタンスは、中国 (北京) 、中国 (杭州) 、中国 (上海) 、中国 (深セン) の各リージョンでサポートされています。

GPU仕様

の詳細を表示するには、fc.gpu.tesla.1.

vGPU メモリ (MB)

vCPU

最大メモリサイズ (GB)

メモリサイズ (MB)

1024

0.05-0.5

2

128-2048

2048

0.05-1

4

128-4096

3072

0.05-1.5

6

128-6144

4096

0.05-2

8

128-8192

5120

0.05-2.5

10

128-10240

6144

0.05-3

12

128-12288

7168

0.05-3.5

14

128-14336

8192

0.05-4

16

128-16384

9216

0.05-4.5

18

128-18432

10240

0.05-5

20

128-20480

11264

0.05-5.5

22

128-22528

12288

0.05-6

24

128-24576

13312

0.05-6.5

26

128-26624

14336

0.05-7

28

128-28672

15360

0.05-7.5

30

128-30720

16384

0.05-8

32

128-32768

vGPUメモリとリージョンレベルのインスタンスの同時実行性の関係

  • TeslaシリーズGPUの総メモリ容量は16 GBです。 vGPUメモリを1 GBに設定すると、このシリーズの1つのGPUで16個のGPUコンテナを同時に実行できます。 デフォルトでは、リージョン内のGPUの総数は30に制限されています。 したがって、いつでも、リージョン内で最大480個のTeslaシリーズGPUコンテナを実行できます。

    • GPU関数のインスタンス同時実行性を1に設定すると、リージョン内の関数で最大480個の推論リクエストを同時に処理できます。

    • GPU関数のインスタンス同時実行性を5に設定すると、リージョン内の関数で最大2,400件の推論リクエストを同時に処理できます。

  • AdaシリーズGPUの総メモリ容量は48 GBで、1つのGPUコンテナのみを搭載できます (vGPUメモリは48 GBにのみ設定できます) 。 デフォルトでは、リージョン内のGPUの総数は30に制限されています。 したがって、どの時点でも、リージョン内で最大30個のAdaシリーズGPUコンテナを実行できます。

    • GPU関数のインスタンス同時実行性を1に設定すると、リージョン内の関数で最大30個の推論リクエストを同時に処理できます。

    • GPU関数のインスタンス同時実行性を5に設定すると、リージョン内の関数で最大150件の推論リクエストを同時に処理できます。

関連ドキュメント

  • 自動スケーリングルールを設定するときに、アイドルモード機能を有効にできます。 詳細については、「自動スケーリングルールの設定」をご参照ください。

  • Function Computeの課金方法と課金可能項目の詳細については、「課金の概要」をご参照ください。

  • APIを呼び出して関数を作成する場合、instanceTypeパラメーターを使用してインスタンスタイプを指定できます。 詳細については、「CreateFunction」をご参照ください。

  • Function Computeコンソールでインスタンスのタイプと仕様を指定する方法の詳細については、「関数の管理」をご参照ください。