翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
空間ドメインの設定
空間ドメインの場合は、partitioning_strategy
を指定する必要があります。このプロパティの値は、スキーマの別の部分で定義したパーティショニング戦略に付けた名前です。
MySpatialDomain: launch_apps_by_partitioning_strategy: partitioning_strategy: "MyGridPartitioning" grid_partition: x: 2 y: 2 app_config: package: "s3://weaver-myproject-111122223333-us-west-2/MySpatialApp.zip" launch_command: ["MySpatialApp"] required_resource_units: compute: 1
注記
SimSpace Weaver App SDKバージョン 1.12.x プロジェクトでは、App .zip ファイルとスキーマに別々のバケットを使用します。
ウィーバー-
lowercase-project-name
-account-number
-app-zips-region
ウィーバー-
lowercase-project-name
-account-number
-スキーマ-region
Grid
トポロジー (このリリースでサポートされている唯一のトポロジー) を使用したパーティショニング戦略は、このドメインの空間アプリケーションパーティション SimSpace Weaver をグリッドに配置するように に指示します。grid_partition
プロパティは、パーティショングリッドの行数と列数を指定します。
SimSpace Weaver は、パーティショングリッド内のセルごとに空間アプリケーションの 1 つのインスタンスを開始します。例えば、空間ドメインに x: 2
と grid_partition
の値がある場合y: 2
、空間ドメインには 2 * 2 = 4 つのパーティションがあります。 SimSpace Weaver は、空間ドメインで設定されたアプリケーションの 4 つのインスタンスを開始し、各アプリケーションインスタンスに 1 つのパーティションを割り当てます。
空間ドメインのリソース要件
各ワーカーには最大 17 コンピュートリソースユニットを割り当てることができます。空間ドメインの app_config
セクションで、各空間アプリケーションが使用するコンピュートリソースユニットの数を指定します。
例 空間アプリケーションのコンピュートリソースユニットを示すスキーマスニペット
MySpatialDomain: launch_apps_by_partitioning_strategy: partitioning_strategy: "MyGridPartitioning" grid_partition: x: 2 y: 2 app_config: package: "s3://weaver-myproject-111122223333-artifacts-us-west-2/MySpatialApp.zip" launch_command: ["MySpatialApp"] required_resource_units: compute: 1
ドメインが必要とするコンピュートリソースユニットの数を計算するには、グリッド内のセル数 (grid_partition
内で x
* y
) に、空間アプリケーションに割り当てられたコンピュートリソースユニットの数を掛けます。
前の例では、ドメイン MySpatialDomain
は以下を指定します。
x
:2
y
:2
compute
:1
MySpatialDomain
のグリッドには 2 * 2 = 4 個のセルがあります。空間ドメインには 4 * 1 = 4 のコンピュートリソースユニットが必要です。
スキーマで指定する全ドメインのコンピュートリソースユニットの総数は、ワーカー数に各ワーカーのコンピュートリソースユニットの最大数 (17) を掛けた desired
の数以下でなければなりません。
複数の空間ドメイン
複数の空間ドメインを使用するようにシミュレーションを設定できます。例えば、1 つの空間ドメインを使用してシミュレーションの主なアクター (人や車など) を制御し、別の空間ドメインを使用して環境を制御できます。
また、複数の空間ドメインを使用して、シミュレーションのさまざまな部分に異なるリソースを割り当てることもできます。例えば、あるタイプのエンティティが他のタイプの 10 倍のエンティティインスタンスを持つタイプのエンティティの場合、エンティティタイプごとに異なるドメインを作成して各エンティティタイプを処理し、そのエンティティの数が多いドメインにより多くのリソースを割り当てることができます。
重要
SimSpace Weaver 1.14.0 より前のバージョンでは、複数の空間ドメインをサポートしていません。
重要
AWS SimSpace Weaver Local は現在、複数の空間ドメインをサポートしていません。の詳細については、「」を参照してください。SimSpace Weaver Local「でのローカル開発 SimSpace Weaver」を参照してください。
重要
SimSpace Weaver は、シミュレーションごとに最大 5 つのドメインをサポートします。これには、すべての空間ドメイン、カスタムドメイン、およびサービスドメインが含まれます。
複数の空間ドメインを設定する
複数の空間ドメインを設定するには、他の空間ドメイン定義を個別の名前付きセクションとしてスキーマに追加します。各ドメインは launch_apps_by_partitioning_strategy
キーを指定する必要があります。次のスキーマの例を参照してください。
sdk_version: "1.14" workers: MyComputeWorkers: type: "sim.c5.24xlarge" desired: 1 clock: tick_rate: "30" partitioning_strategies: MyGridPartitioning: topology: Grid aabb_bounds: x: [0, 1000] y: [0, 1000] domains: MySpatialDomain: launch_apps_by_partitioning_strategy: partitioning_strategy: "MyGridPartitioning" grid_partition: x: 2 y: 2 app_config: package: "s3://weaver-myproject-111122223333-artifacts-us-west-2/MySpatialApp.zip" launch_command: ["MySpatialApp"] required_resource_units: compute: 1 MySecondSpatialDomain: launch_apps_by_partitioning_strategy: partitioning_strategy: "MyGridPartitioning" grid_partition: x: 2 y: 2 app_config: package: "s3://weaver-myproject-111122223333-artifacts-us-west-2/MySpatialApp2.zip" launch_command: ["MySpatialApp2"] required_resource_units: compute: 1
空間ドメインをまとめて配置する
シナリオによっては、空間ドメインのパーティションを別のドメインのパーティションの隣に配置する場合があります。これにより、これらのパーティションが相互にクロスドメインサブスクリプションを作成する場合に、パフォーマンス特性が向上する可能性があります。
最上位キーplacement_constraints
をスキーマに追加して、どのドメインを一緒に配置 SimSpace Weaver するかを指定します。必要な on_workers
キーは、スキーマ内の名前付き workers
設定を参照している必要があります。
例 空間ドメインをまとめて配置したスキーマスニペット
workers: MyComputeWorkers: type: "sim.c5.24xlarge" desired: 2 placement_constraints: - placed_together: ["MySpatialDomain", "MySecondSpatialDomain"] on_workers: ["MyComputeWorkers"]
重要
配置グループを使用する場合:
x * y がワーカー数の倍数であることを確認します。
配置グループの値が、まとめて配置するドメインのグリッド寸法の共通除数であることを確認します。
プレイスメントグループを使用しない場合:
空間ドメイングリッドの 1 つの軸に、ワーカー数と等しい公約数があることを確認します。
グループ配置の詳細については、「パーティショニング戦略」を参照してください。
空間ドメインに関するよくある質問
Q1. 既存のシミュレーションに別の空間ドメインを追加する方法を教えてください。
-
実行中のシミュレーションの場合 — 実行中のシミュレーションの設定は変更できません。スキーマのドメイン設定を変更し、スキーマとアプリケーションの zip をアップロードして、新しいシミュレーションを開始します。
-
新しいシミュレーションの場合 — ドメイン設定をスキーマに追加し、スキーマとアプリケーション zip をアップロードして、新しいシミュレーションを開始します。
空間ドメインのトラブルシューティング
ドメインの設定が無効な状態でシミュレーションを開始しようとすると、以下のエラーが表示される可能性があります。
"StartError": "[{\"errorType\":\"SchemaFormatInvalid\",\"errorMessage\":
\"We were unable to determine an arrangement of your domains that would fit
within the provided set of workers. This can generally be resolved by
increasing the number of workers if able, decreasing your domains\u0027
[\u0027\u0027grid_partition\u0027\u0027] values, or adjusting the
dimensions of your [\u0027\u0027grid_placement_groups\u0027\u0027].\"}]"
可能性のある原因
スキーマが、ワーカーで使用可能な量よりも多くのコンピュートリソースユニットをアプリケーションに割り当てています。
SimSpace Weaver は、ワーカーにドメインをまとめて配置する配置を決定できません。これは、複数の空間ドメインを指定しても、ドメイングリッド間に共通の除数や倍数がない場合 (2x4 グリッドと 3x5 グリッドの間など) に発生します。