Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
remote_execution_feature [2024/10/23 15:20] admin |
remote_execution_feature [2024/10/23 16:08] (current) admin |
||
---|---|---|---|
Line 5: | Line 5: | ||
To configure the coordinator, navigate to a directory where you have write permissions and execute the following command: | To configure the coordinator, navigate to a directory where you have write permissions and execute the following command: | ||
- | <code>c:\Program Files\Dinamica EGO 8\DinamicaCoordinator --address X.X.X.X --port YYYY</code> | + | **Windows** |
+ | <code>c:\Program Files\Dinamica EGO 8\DinamicaCoordinator8 --address X.X.X.X --port YYYY</code> | ||
+ | |||
+ | **Linux** | ||
+ | <code>./DinamicaEGO-810-Ubuntu-LTS.AppImage --coordinator --address X.X.X.X --port YYYY</code> | ||
Replace ''X.X.X.X'' with the IP address of the machine that will serve as the coordinator, and ''YYYY'' with the port number where it will listen for incoming connections. This machine will act as the coordinator, responsible for managing and distributing tasks to connected agents. | Replace ''X.X.X.X'' with the IP address of the machine that will serve as the coordinator, and ''YYYY'' with the port number where it will listen for incoming connections. This machine will act as the coordinator, responsible for managing and distributing tasks to connected agents. | ||
+ | |||
+ | The Dinamica Coordinator supports various parameters, which can be viewed by running the following commands: | ||
+ | |||
+ | **Windows** | ||
+ | <code>c:\Program Files\Dinamica EGO 8\DinamicaCoordinator8 --help</code> | ||
+ | |||
+ | **Linux** | ||
+ | <code>./DinamicaEGO-810-Ubuntu-LTS.AppImage --coordinator --help</code> | ||
===== Agent Setup ===== | ===== Agent Setup ===== | ||
Line 13: | Line 25: | ||
To configure an agent, navigate to a directory where you have write permissions and run: | To configure an agent, navigate to a directory where you have write permissions and run: | ||
+ | **Windows** | ||
<code>c:\Program Files\Dinamica EGO 8\DinamicaAgent --address X.X.X.X --port YYYY</code> | <code>c:\Program Files\Dinamica EGO 8\DinamicaAgent --address X.X.X.X --port YYYY</code> | ||
+ | |||
+ | **Linux** | ||
+ | <code>./DinamicaEGO-810-Ubuntu-LTS.AppImage --agent --address X.X.X.X --port YYYY</code> | ||
Here, ''X.X.X.X'' should be the IP address of the coordinator, and ''YYYY'' is the port number used by the coordinator to communicate with agents. The machine running this command will function as an agent, executing tasks assigned by the coordinator. You can deploy agents on multiple machines to expand the processing capacity. Agents can also be run on the same machine as the coordinator, but this is not recommended if the agent's tasks are computationally intensive. | Here, ''X.X.X.X'' should be the IP address of the coordinator, and ''YYYY'' is the port number used by the coordinator to communicate with agents. The machine running this command will function as an agent, executing tasks assigned by the coordinator. You can deploy agents on multiple machines to expand the processing capacity. Agents can also be run on the same machine as the coordinator, but this is not recommended if the agent's tasks are computationally intensive. | ||
+ | |||
+ | The Dinamica Agent supports various parameters, which can be viewed by running the following commands: | ||
+ | |||
+ | **Windows** | ||
+ | <code>c:\Program Files\Dinamica EGO 8\DinamicaAgent --help</code> | ||
+ | |||
+ | **Linux** | ||
+ | <code>./DinamicaEGO-810-Ubuntu-LTS.AppImage --agent --help</code> | ||
===== Running Parts of a Model Remotely ===== | ===== Running Parts of a Model Remotely ===== | ||
Line 21: | Line 45: | ||
To execute parts of a model remotely, access the Dinamica interface on the machine where the model is located. Navigate to `Tools -> Options | Execution | Remote Computing` and input the coordinator’s address and port number. | To execute parts of a model remotely, access the Dinamica interface on the machine where the model is located. Navigate to `Tools -> Options | Execution | Remote Computing` and input the coordinator’s address and port number. | ||
- | Once the remote settings are configured, you can run models containing the `[[RunRemotely]]` container. All operations intended for remote execution must be placed within this container, and you can then run the model as usual. The `[[RunRemotely]]` container ensures that the designated parts of the model are executed remotely. | + | Once the remote settings are configured, you can run models containing the [[Run Remotely]] container. All operations intended for remote execution must be placed within this container, and you can then run the model as usual. The [[Run Remotely]] container ensures that the designated parts of the model are executed remotely. |
- | ===== RunRemotely Configuration and Features ===== | + | ===== "Run Remotely" Configuration and Features ===== |
==== Overriding Coordinator Settings ==== | ==== Overriding Coordinator Settings ==== | ||
- | The `[[RunRemotely]]` container allows you to override the coordinator address and other options defined in the global configuration by using the container’s input ports. This feature provides flexibility, enabling you to adjust the coordinator and connection settings dynamically during runtime. It is particularly useful when working in environments with varying network configurations or when managing multiple distributed setups. | + | The [[Run Remotely]] container allows you to override the coordinator address and other options defined in the global configuration by using the container’s input ports. This feature provides flexibility, enabling you to adjust the coordinator and connection settings dynamically during runtime. It is particularly useful when working in environments with varying network configurations or when managing multiple distributed setups. |
==== Using Multiple Coordinators ==== | ==== Using Multiple Coordinators ==== | ||
- | You can configure different instances of the `[[RunRemotely]]` container to connect to different coordinators. This allows different parts of a model to be distributed and processed by distinct coordinators and agents, which is especially beneficial for large-scale simulations or workloads that need to be split across multiple machines. By distributing the workload across different environments, you can optimize resource utilization and reduce processing time. Each section of the model communicates with its designated coordinator, allowing for granular control over distributed execution. | + | You can configure different instances of the [[Run Remotely]] container to connect to different coordinators. This allows different parts of a model to be distributed and processed by distinct coordinators and agents, which is especially beneficial for large-scale simulations or workloads that need to be split across multiple machines. By distributing the workload across different environments, you can optimize resource utilization and reduce processing time. Each section of the model communicates with its designated coordinator, allowing for granular control over distributed execution. |
- | ==== RunRemotely Limitations ==== | + | ==== "Run Remotely" Limitations ==== |
- | * You can pass most data types from functors outside the `[[RunRemotely]]` container to functors inside it. However, passing maps from outside to inside the `[[RunRemotely]]` container is not supported and will result in an error. | + | * You can pass most data types from functors outside the [[Run Remotely]] container to functors inside it. However, passing maps from outside to inside the [[Run Remotely]] container is not supported and will result in an error. |
- | * Data cannot be passed from functors inside the `[[RunRemotely]]` container to functors outside of it. Attempting to do so will generate an error. | + | * Data cannot be passed from functors inside the [[Run Remotely]] container to functors outside of it. Attempting to do so will generate an error. |