Distributed Compute Overview
Background
HEC-WAT computations with the Flood Risk Analysis computation option created a design problem for the development team. While our computes were theoretically sound and the computes were possible, the compute times were untenable. Many of the products used in HEC-WAT required a single instance of the application active at any time, which lead our team towards a distributed compute that leverages many virtual machines independently computing a portion of the total compute.
The Distributed Compute set up is for WAT version 1.1 or higher.
The Controller Node and the Compute Nodes
The Distributed Compute is broken into two major pieces, the controller node and the compute nodes. The controller node "controls" the compute nodes that are on the same port number. The controller node sends a signal to start a compute to one of the compute nodes. When the compute node is finished with its simulation, a signal is sent back to the controller node indicating completion and output results are saved back to the controller node for further post processing. The figure below is an example of one controller node with three compute nodes on the same port number.

Controller Node
There is one controller node per WAT simulation and will need to be set up first. This node communicates with the distributed compute grid and facilitates assigning jobs to each compute node, presenting progress to the user, and organizing results received from the compute nodes. The user manages the controller node through the HEC-WAT interface. Click here to set up the distributed compute plugin for the Controller.
Compute Node
There can be many compute nodes per WAT simulation. These nodes receive jobs from the distributed compute grid, compute them, and send results back to the controller node. The compute node is initialized via a batch file (computenode.bat). This launches a compute node that becomes part of the distributed compute grid. When the controller node sends a message to compute a WAT simulation job, the compute node starts an instance of HEC-WAT, checks to see if all of the necessary files are present in the proper locations for the project, computes the job, and reports results or failure of the compute.
You must have access to multiple computers connected to a network or virtual machine (VM). Each Compute node also needs to have the same version of HEC-WAT installed as the Controller node. Once you have the Controller Node set up, click here to set up the distributed compute plugin for the Compute nodes.