Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Configurazione dei domini spaziali
Per i domini spaziali, è necessario specificare un. partitioning_strategy
Il valore di questa proprietà è il nome assegnato a una strategia di partizionamento definita in un'altra parte dello schema.
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
Nota
SimSpace Weaver i progetti della SDK versione 1.12.x dell'app utilizzano bucket separati per i file.zip dell'app e lo schema:
tessitore-
lowercase-project-name
-account-number
-app zip-region
tessitore-
lowercase-project-name
-account-number
-schemi-region
Una strategia di partizionamento con una Grid
topologia (l'unica topologia supportata in questa versione) consente di disporre le partizioni spaziali delle app SimSpace Weaver di questo dominio in una griglia. La grid_partition
proprietà specifica il numero di righe e colonne della griglia di partizione.
SimSpace Weaver avvierà 1 istanza dell'app spaziale per ogni cella nella griglia di partizione. Ad esempio, se un dominio spaziale ha grid_partition
valori x: 2
e y: 2
ci sono 2 * 2 = 4 partizioni nel dominio spaziale. SimSpace Weaver avvierà 4 istanze dell'app configurate nel dominio spaziale e assegnerà 1 partizione a ciascuna istanza dell'app.
Argomenti
Requisiti di risorse per i domini spaziali
È possibile assegnare fino a 17 unità di risorse di calcolo per ogni lavoratore. Specificate il numero di unità di risorse di calcolo utilizzate da ogni app spaziale nella app_config
sezione del vostro dominio spaziale.
Esempio frammento di schema che mostra le unità di risorse di calcolo per un'app spaziale
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
Per calcolare il numero di unità di risorse di calcolo richieste da un dominio, moltiplica il numero di celle nella griglia (nel tuogrid_partition
, x
*y
) per il numero di unità di risorse di calcolo assegnate alle app spaziali.
Nell'esempio precedente, il dominio specifica: MySpatialDomain
x
:2
y
:2
compute
:1
La griglia per MySpatialDomain
ha 2* 2 = 4 celle. Il dominio spaziale richiede 4* 1 = 4 unità di risorse di calcolo.
Il numero totale di unità di risorse di calcolo per tutti i domini specificati nello schema deve essere inferiore o uguale al numero di worker moltiplicato per il desired
numero massimo di unità di risorse di calcolo per ogni lavoratore (17).
Domini spaziali multipli
È possibile configurare la simulazione per utilizzare più di un dominio spaziale. Ad esempio, puoi utilizzare 1 dominio spaziale per controllare gli attori principali di una simulazione (come persone e automobili) e un dominio spaziale diverso per controllare l'ambiente.
Puoi anche utilizzare più domini spaziali per assegnare risorse diverse a diverse parti della simulazione. Ad esempio, se la simulazione ha un tipo di entità che ha 10 volte più istanze di entità rispetto a un altro tipo, puoi creare domini diversi per gestire ogni tipo di entità e allocare più risorse per il dominio con più entità.
Importante
SimSpace Weaver le versioni precedenti alla 1.14.0 non supportano più domini spaziali.
Importante
AWS SimSpace Weaver Local attualmente non supporta più domini spaziali. Per ulteriori informazioni sull' SimSpace Weaver Local, consulta Sviluppo locale in SimSpace Weaver.
Importante
SimSpace Weaver supporta fino a 5 domini per ogni simulazione. Ciò include tutti i domini spaziali, personalizzati e di servizio.
Configura più domini spaziali
Per configurare più di un dominio spaziale, aggiungi le altre definizioni di dominio spaziale come sezioni denominate separate nello schema. Ogni dominio deve specificare la chiave. launch_apps_by_partitioning_strategy
Vedi lo schema di esempio seguente.
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
Collocazione di domini spaziali
In alcuni scenari, potresti voler posizionare le partizioni per un dominio spaziale sui worker accanto alle partizioni di un altro dominio. Ciò può migliorare le caratteristiche prestazionali se tali partizioni creano sottoscrizioni tra domini diversi.
Aggiungi la chiave placement_constraints
di primo livello allo schema per specificare quali domini SimSpace Weaver devono essere messi insieme. La on_workers
chiave richiesta deve fare riferimento a una workers
configurazione denominata nello schema.
Esempio frammento di schema che mostra i domini spaziali messi insieme
workers: MyComputeWorkers: type: "sim.c5.24xlarge" desired: 2 placement_constraints: - placed_together: ["MySpatialDomain", "MySecondSpatialDomain"] on_workers: ["MyComputeWorkers"]
Importante
Se si utilizzano gruppi di collocamento:
Assicurati che x * y sia un multiplo del numero di lavoratori.
Assicurati che i valori del gruppo di posizionamento siano divisori comuni per le dimensioni della griglia dei domini che metti insieme.
Se non utilizzi i gruppi di collocamento:
Assicurati che 1 asse delle griglie del dominio spaziale abbia un divisore comune uguale al numero di lavoratori.
Per ulteriori informazioni sui gruppi di collocamento, vedere. Strategie di partizionamento
Domande frequenti sui domini spaziali
D1. Come posso aggiungere un altro dominio spaziale a una simulazione esistente?
-
Per una simulazione in esecuzione: non è possibile modificare la configurazione di una simulazione di esecuzione. Modifica la configurazione del dominio nello schema, carica lo schema e gli zip dell'app e avvia una nuova simulazione.
-
Per una nuova simulazione: aggiungi la configurazione del dominio allo schema, carica lo schema e gli zip dell'app e avvia la nuova simulazione.
Risoluzione dei problemi relativi ai domini spaziali
È possibile che venga visualizzato il seguente errore quando si tenta di avviare la simulazione ma la configurazione del dominio non è valida.
"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].\"}]"
Cause potenziali
Lo schema alloca più unità di risorse di calcolo per le app rispetto a quelle disponibili per i lavoratori.
SimSpace Weaver non è in grado di stabilire una disposizione per raggruppare i domini dei lavoratori. Ciò accade quando si specificano più domini spaziali ma non esiste un divisore o un multiplo comune tra le griglie di dominio, ad esempio tra una griglia 2x4 e una griglia 3x5).