3.3 Installing and Running TUFLOW

3.3.1 TUFLOW FV Downloads and Installation

TUFLOW FV uses an installer for Release 2026.0.0 onwards, which is available via the TUFLOW website Downloads page. Past TUFLOW FV versions (that do not use an installer) are available from the Downloads Archive.

3.3.2 Licensing

A TUFLOW FV licence is required to execute TUFLOW FV simulations. A licence is not required for use of third party software components such as GIS platforms, text editors, or graphical user interfaces. Further information on licensing is provided in the installation instructions on the TUFLOW FV Wiki.

TUFLOW FV licences are hosted using either hardware based locks (for example, USB dongles) or software based locks (for example, licence configuration files associated with a specific computer, server, or cloud virtual machine). Enquiries regarding licence purchase and pricing should be directed to sales@tuflow.com.

TUFLOW FV may be run without a licence when completing the TUFLOW FV tutorials, using the example models, or when operating in Demo Mode (refer to Section 3.1.3).

3.3.3 Performing Simulations

TUFLOW FV simulations are initiated by executing the TUFLOW executable and passing a TUFLOW FV control file (.fvc) as input. Several methods are available for starting simulations:

  • Running a batch file. Batch files may be used to run individual simulations or to automate multiple runs by looping over events and scenarios, or by distributing simulations across multiple processors.
  • Running from a text editor. This method is commonly used for single simulations during model development.
  • Running directly from GIS software.
  • Running via Microsoft Windows Explorer using a right click execution option.
  • Running through a graphical user interface, such as the SMS TUFLOW FV Interface.
  • Running from a command (console) window.

Detailed descriptions of these execution methods are provided on the TUFLOW FV Wiki.

3.3.3.1 Parallelisation

Simulations executed on CPU run in parallel thread mode by default. In this mode, tasks are split and processed in parallel across multiple logical CPU processors using the OpenMP shared memory model. The maximum number of threads for a given simulation is limited to the smaller of the logical processors available on the modelling computer, or the number of available TUFLOW FV licence threads. For direct control over the number of threads utilised for a simulation, the OMP_NUM_THREADS environment variable can be added to the simulation batch (Windows) or shell script (Linux). For example:

Windows Batch File with OMP_NUM_THREADS Environment Variable

set exe=C:\TUFLOWFV\TUFLOWFV.exe
set OMP_NUM_THREADS=8

rem Run models using 8 logical processors in parallel 
%exe% Surge_Model_001.fvc 

Linux Bash Script with OMP_NUM_THREADS Environment Variable

#!/bin/bash
export OMP_NUM_THREADS=8

tuflowfv Surge_Model_001.fvc

If running on GPU, a TUFLOW FV simulation can utilise one GPU device at a time and a single simulation cannot be split over multiple GPU devices. If multiple GPU devices are present, one can be explicitly selected using the Device ID command.

3.3.4 Hardware

The Hardware and Device ID commands are typically used in the .fvc file to set the default hardware configuration. In practice, the recommended approach is to override these defaults as needed using runtime command line arguments. For example both the Hardware and Device ID command can be overridden in the simulation batch (Windows) or shell script (Linux) using the -puX switch, where ‘pu’ indicates that GPU hardware should be used, and ‘X’ is the Device ID to set.

Windows Batch File With Hardware Switches

set exe=C:\TUFLOWFV\TUFLOWFV.exe
set OMP_NUM_THREADS=8

rem Run on GPU hardware device ID 1 using the -pu1 switch
rem Run models using 8 logical processors in parallel for non-GPU components
%exe% -pu1 Surge_Model_005.fvc 

Linux Bash Script With Hardware Switches

#!/bin/bash
export OMP_NUM_THREADS=8

# Run on GPU hardware device ID 1 using the -pu1 switch
# Run models using 8 logical processors in parallel for non-GPU components

tuflowfv -pu1 Surge_Model_005.fvc