メインコンテンツへスキップ

フェアシェアスケジューラー

量子処理ユニット(QPU)にワークロードを送信すると、そのワークロードは特定のQPUのスケジューラーに入り、そのQPU上での実行を待っているワークロードのプール(全ユーザーからのもの)に加わります。これらのワークロードが実行される順序は、デフォルトではフェアシェアの計算式によって決まります。以下で説明するように、この計算式は、一定の時間ウィンドウにわたって割り当てられたQPUアクセス量に基づき、異なるインスタンス間でワークロードのバランスを取ることを目的としています。実際には、さまざまなインスタンスからのワークロードが混在して処理されるため、ワークロードが完了する順序は必ずしも送信された順序とは一致しません。順序は新しいワークロードが届くたびに動的に計算されるため、フェアシェアスケジューラーによってワークロードがいつ実行されるかを保証することは一般的に不可能です。

フェアシェアの用語

  • アカウント: 個人および組織は、IBM Cloud® アカウントを使用してIBM Quantum® PlatformおよびQiskit Runtimeにアクセスします。

  • インスタンス: 上位のアカウントから一連のQPUに時間が割り当てられ、ユーザーが直接割り当てられる基本的な構成要素です。インスタンスは特定のリージョンとプランに関連付けられています。詳細については、インスタンスガイドをご参照ください。

  • 28日間のローリングウィンドウ: フェアシェアスケジューラーは、ローリング時間ウィンドウにわたる使用量を考慮します。フェアネスの目的で考慮されるのは、そのウィンドウ内に累積された実行時間のみです。ウィンドウの長さは現在28日間です。フェアシェアスケジューラーが呼び出されると、28日前からの使用量が考慮されます。(注: ローリング時間ウィンドウはFlex Planには適用されません。Flex Planのフェアシェア比率は、総使用量と割り当て量の比率です。)

  • 使用時間: すべてのインスタンスについて、28日間のローリングウィンドウ中にすべてのQPUでの使用量が考慮されます。これには、成功したすべてのワークロードと、既知の特定のエラーコードを返したワークロードが含まれます。(注: ローリング時間ウィンドウはFlex Planには適用されません。Flex Planのフェアシェア比率は、総使用量と割り当て量の比率です。)

割り当てと管理

IBM® は、各組織のIBM Cloudアカウントに対して、そのプランで契約した容量に基づき、量子コンピューティング容量の割り当てを設定します。アカウント管理者はその後、この割り当てのどの部分を各インスタンスに割り当てるかを決定します。フェアシェアスケジューラーは、インスタンスの割り当てと現在の使用量を使用して、各インスタンスにリソースを公平に分配する方法でワークロードをスケジュールします。

たとえば、2つのインスタンスのみが1台の量子コンピューターのキューにワークロードを持っているとします。他の条件がすべて同じであれば、2倍の分数を持つインスタンスは2倍のワークロードを実行できます。

組織のアカウントがエンタープライズアカウントである場合、アカウント管理者はまず割り当てをアカウントの子アカウントに配分する必要があり、子アカウントの管理者はその後、割り当ての自分の部分を子アカウントのインスタンスに配分します。

フェアシェアスケジューラーの仕組み

フェアシェアスケジューラーは、どのインスタンスもQPUを独占できないよう、QPU上で実行するワークロードを動的な順序で選択します。QPUが追加の作業の準備ができると、フェアシェアスケジューラーに次のワークロードをリクエストします。スケジューラーのデフォルト動作では、現在のスケジューリングウィンドウ内で割り当ての使用量が最も少ないインスタンスを最初に特定することで、次のワークロードを選択します。選択されたインスタンスが複数のワークロードを送信している場合、スケジューラーは最も古いワークロードを最初に選択します。したがって、インスタンス内では、スケジューラーは先入れ先出し(FIFO)方式で動作します。

次のステップ

推奨事項