Difference between revisions of "Hardware Benchmarking (2018-03-AA)"

From Tuflow
Jump to navigation Jump to search
 
(44 intermediate revisions by 5 users not shown)
Line 1: Line 1:
 
=Introduction=
 
=Introduction=
We frequently get asked, "What is the minimum or recommended hardware to use for TUFLOW modelling".  This is always a tricky question, as the answer depends on the type and size of the models you are going to be run. For a small model, TUFLOW should run on any modern PC or laptop that is capable of running Windows XP or later.  However, for large models there may be requirements for a hefty computer running a 64 bit version of Windows.<br>
+
We frequently get asked, "What is the minimum or recommended hardware to use for TUFLOW modelling".  This is always a tricky question, as the answer depends on the type and size of the models you are going to run. For a small model, TUFLOW should run on any modern PC or laptop that is capable of running Windows XP or later.  However, for large models there may be requirements for a hefty computer.<br>
 +
 
 
The tables below showing computer specifications and model run-time should help you compare systems. <br>
 
The tables below showing computer specifications and model run-time should help you compare systems. <br>
In this page we outline a hardware benchmark model which is available to download from the <u>[http://www.tuflow.com/Tuflow%20Tutorial%20Models.aspx TUFLOW website]</u> the model can be simulated without a TUFLOW dongle (license).  This makes it easy to benchmark on a range of computers and the results are complied below.<br>
+
 
 +
In this page we outline a hardware benchmark model which is available to download from <u>[https://downloads.tuflow.com/_archive/TUFLOW/Benchmark_Models/FMA2_GPU_CPU_Benchmark.zip FMA2_GPU_CPU_Benchmark.zip]</u> the model can be simulated without a TUFLOW dongle (license).  This makes it easy to benchmark on a range of computers and the results are compiled below.<br>
 +
 
 
We have typically found that for TUFLOW Classic, the CPU speed is the largest influence on TUFLOW runtimes, with the RAM speed also having an influence for large models. When using GPU hardware (available for TUFLOW HPC), the Graphics Card has the largest influence, specifically the number and speed of the CUDA cores. In order to quantify this we are compiling the computational times required for a range of different machines.
 
We have typically found that for TUFLOW Classic, the CPU speed is the largest influence on TUFLOW runtimes, with the RAM speed also having an influence for large models. When using GPU hardware (available for TUFLOW HPC), the Graphics Card has the largest influence, specifically the number and speed of the CUDA cores. In order to quantify this we are compiling the computational times required for a range of different machines.
  
Line 8: Line 11:
 
==Background==
 
==Background==
 
The benchmark model is based on a “challenge” issued prior to the 2012 Flood Managers Association (FMA) Conference in Sacramento, USA.  There is more information on the model setup and purpose  in the <u>[[FMA_Challenge_Models_Introduction | FMA challenge model introduction]]</u>.<br>
 
The benchmark model is based on a “challenge” issued prior to the 2012 Flood Managers Association (FMA) Conference in Sacramento, USA.  There is more information on the model setup and purpose  in the <u>[[FMA_Challenge_Models_Introduction | FMA challenge model introduction]]</u>.<br>
This hardware benchmark is based on the second challenge which involves a coastal river in flood with two ocean outlets.  The model has been modified slightly (mainly in terms of the outputs).  It is setup to run use both the TUFLOW Classic (CPU) and TUFLOW HPC (on both CPU and GPU hardware) for a range of cell sizes.
+
This hardware benchmark is based on the second challenge which involves a coastal river in flood with two ocean outlets.  The model has been modified slightly (mainly in terms of the outputs).  It is setup to use both the TUFLOW Classic (CPU) and TUFLOW HPC (on both CPU and GPU hardware) for a range of cell sizes.
 
<br>
 
<br>
'''Cell sizes'''
+
 
 
{| align="center" class="wikitable"
 
{| align="center" class="wikitable"
  
Line 24: Line 27:
 
|2.5 || 11,645,341
 
|2.5 || 11,645,341
 
|}
 
|}
 +
 
The model runs for three days of simulation time (72 hours).  The approximate run time for the 30m model on the CPU is likely to be ~20min and for the 15m version approximately 4 hours.  Given the runtime for the CPU model at 10m resolution is likely to be > 12 hours, this is skipped in the benchmark (this can also be run without a licence).
 
The model runs for three days of simulation time (72 hours).  The approximate run time for the 30m model on the CPU is likely to be ~20min and for the 15m version approximately 4 hours.  Given the runtime for the CPU model at 10m resolution is likely to be > 12 hours, this is skipped in the benchmark (this can also be run without a licence).
 
<br>
 
<br>
Line 35: Line 39:
 
*10m model - TUFLOW HPC - GPU Hardware
 
*10m model - TUFLOW HPC - GPU Hardware
  
The user also has an option to run a couple of bigger models on GPU hardware as part of the High End GPU Benchmarking. To run these models, please follow the steps outlined in the below section.
+
The user also has an option to run a couple of bigger models on GPU hardware as part of the High End GPU Benchmarking. To run these models, please follow the steps outlined in the below section.<br>
 
HIGH END GPU BENCHMARKING MODELS
 
HIGH END GPU BENCHMARKING MODELS
*5m model - TUFLOW HPC - GPU Hardware*
+
*5m model - TUFLOW HPC - GPU Hardware
*2.5m model - TUFLOW HPC - GPU Hardware*
+
*2.5m model - TUFLOW HPC - GPU Hardware
<font size=2><sup>''*</sup>To run the high end HPC GPU models, please see "[[#Running_the_High_End_GPU_Benchmarking | Running the High End GPU Benchmarking" below]]''</font>.
 
<br>
 
  
 
==To Participate==
 
==To Participate==
 
To participate in the benchmark, please follow the steps below:
 
To participate in the benchmark, please follow the steps below:
 
<ol>
 
<ol>
<li> Download the model from http://www.tuflow.com/Download/TUFLOW/Benchmark_Models/FMA2_GPU_CPU_Benchmark.zip
+
<li> Download the model from <u>[https://downloads.tuflow.com/_archive/TUFLOW/Benchmark_Models/FMA2_GPU_CPU_Benchmark.zip FMA2_GPU_CPU_Benchmark.zip]</u>.
 
<li> Extract the model on a local drive of the computer you would like to benchmark.
 
<li> Extract the model on a local drive of the computer you would like to benchmark.
<li> Navigate to the '''TUFLOW\runs\''' folder and run the '''Run_Benchmark_Short.bat''' ''or'' '''Run_Benchmark_Long.bat''' file.  This checks if you are running a 32 or 64 bit system and then runs the benchmark.  This also generates some output files that contain more information on the processor, memory and GPU<font size=2><sup>#</sup></font> that you are using.
+
<li> Navigate to the '''TUFLOW\runs\''' folder and run the '''Run_Benchmark.bat''' file.  This checks if you are running a 32 or 64 bit system and then runs the benchmark.  This also generates some output files that contain more information on the processor, memory and GPU card that you are using.
 +
<li> If you have a high performance GPU Card you can also run the '''Run_Benchmark_HighPerformance_GPU.bat'''.
 
<li> Email the _ TUFLOW Simulations.log, cpu.txt, ram.txt and GPU.txt files to support@tuflow.com and we will includes these in the results tables below.<br>
 
<li> Email the _ TUFLOW Simulations.log, cpu.txt, ram.txt and GPU.txt files to support@tuflow.com and we will includes these in the results tables below.<br>
 
</ol>
 
</ol>
 
The computer information is determined in the batch file using the '''wmic''' and '''dxdiag''' commands.<br><br>
 
The computer information is determined in the batch file using the '''wmic''' and '''dxdiag''' commands.<br><br>
<font size=2><sup>''#</sup>An nVidia graphics card that is CUDA compatible is required to run the GPU model . For more information on this please see the [http://www.tuflow.com/Download/TUFLOW/Releases/2013-12/Doc/TUFLOW%20Release%20Notes.2013-12.pdf release notes]''</font>.<br><br>
+
'''Note''' An NVIDIA graphics card that is CUDA compatible is required to run the GPU model. <br>
===Running the High End GPU Benchmarking===
 
<ol>
 
<li> In a text editor, copy and paste the below batch file syntax
 
<li> Save the batch file as '''Run_Benchmark_HighPerformance_GPU.bat''' in the '''TUFLOW/runs''' folder (same location as the standard benchmark batch file)
 
<li> Run the batch file
 
<li> Follow the participation steps below to provide results to TUFLOW
 
</ol>
 
 
<br>
 
<br>
<pre>@echo off
 
:: This sets the variables as local, so you can use another batch file with A and B variables
 
setlocal ENABLEDELAYEDEXPANSION
 
 
:: determine if 32 or 64 bit run
 
ECHO.%PROCESSOR_ARCHITECTURE% | FIND /I "64">Nul && ( set platform=w64) || ( set platform=w32)
 
IF %platform% == w32 (
 
goto :break
 
) ELSE (
 
echo Running with %platform% version of TUFLOW
 
)
 
 
:: set executable (relative path)
 
set exe=..\exe\2018-03-AA\TUFLOW_iSP_%platform%.exe
 
echo Executable: %exe%
 
::
 
echo getting system info using  get_computer_info_%platform%.bat
 
call get_computer_info_%platform%.bat
 
echo done getting system info
 
pause
 
 
echo.
 
echo Starting High Performance HPC Solver GPU hardware simulations
 
set A=05.00m 02.50m
 
:: Loop through each cell size
 
FOR %%a in (%A%) do (
 
    echo Running %%a model with HPC GPU solver
 
    Start "TUFLOW" /wait %exe% -b -s1 HPC -s2 GPU -s3 PU1 -s4 %%a FMA_T2_~s1~_~s2~_~s3~_~s4~_001.tcf
 
)
 
echo Finished High Performance Benchmarking Runs
 
goto :end
 
 
:break
 
echo Unable to run benchmark tests. From release 2017-09-AA, TUFLOW no longer supports 32 bit architecture.
 
 
:end
 
pause</pre>
 
  
 
=List of Benchmarking Runtimes and Discussions=
 
=List of Benchmarking Runtimes and Discussions=
==Benchmarking Runtimes (2017-09 Release)==
+
==Benchmarking Runtimes (2018-03-AA Release)==
*[[Hardware_Benchmarking_-_CPU_RESULTS | CPU results]]
+
*[[Hardware_Benchmarking_-_Results#CPU_Results | CPU results]]
*[[GPU_Benchmarking_Results | GPU results]]
+
*[[Hardware_Benchmarking_-_Results#GPU_Results | GPU results]]
  
 
==Discussion Topics==
 
==Discussion Topics==
*[[Hardware_Benchmarking_Topic_Classic_vs_HPC | Classic vs. HPC (Coming Soon)]] (notes: direct rainfall, dam break, runtimes)
+
*[[Hardware_Benchmarking_Topic_HPC_on_CPU_vs_GPU | HPC (CPU) vs. HPC (GPU)]]  
*[[Hardware_Benchmarking_Topic_HPC_on_CPU_vs_GPU | HPC (CPU) vs. HPC (GPU) (Coming Soon)]]
+
*[[Hardware_Benchmarking_Topic_Single_Precision_VS_Double_Precision | Single Precision Vs Double Precision]]
*[[Hardware_Benchmarking_Topic_HPC_CPU_Scaling | HPC (CPU) Scaling and Hyperthreading (Coming soon)]]
+
*[[ Hardware Selection Advice]]
*[[Hardware_Benchmarking_Topic_HPC_GPU_Scaling | HPC (GPU) Scaling (Coming soon)]]
 
*[[Hardware_Benchmarking_Topic_TUFLOW_GPU_vs_TUFLOW_HPC | TUFLOW HPC vs. TUFLOW GPU (Coming soon)]]
 
*[[Hardware_Benchmarking_Topic_Single_Precision_VS_Double_Precision | Single Precision Vs Double Precision (Coming soon)]]
 
*Influence of 1D on Runtimes (Coming soon)
 
*Hardware Selection
 
**CPU Overclocking
 
**RAM
 
**Solid state drive (and network drive)
 
*Spectre and Meltdown
 
  
 
==Previous Benchmarking Runtimes (2013-12-AD)==
 
==Previous Benchmarking Runtimes (2013-12-AD)==
 +
* [[Hardware_Benchmarking | Previous Computer Hardware Speed Benchmarks Archive]]
 
*[[Hardware_Benchmarking#CPU_Results | Previous CPU Results]]
 
*[[Hardware_Benchmarking#CPU_Results | Previous CPU Results]]
 
*[[Hardware_Benchmarking#GPU_Results | Previous GPU solver results]]
 
*[[Hardware_Benchmarking#GPU_Results | Previous GPU solver results]]
 +
 +
==Hardware Selection Advice==
 +
* [[Hardware_Selection_Advice | Hardware Selection Advice]]
 +
<br>
 +
{{Tips Navigation
 +
|uplink=[[Main_Page| TUFLOW Main Page]]
 +
}}

Latest revision as of 16:21, 29 July 2024

Introduction

We frequently get asked, "What is the minimum or recommended hardware to use for TUFLOW modelling". This is always a tricky question, as the answer depends on the type and size of the models you are going to run. For a small model, TUFLOW should run on any modern PC or laptop that is capable of running Windows XP or later. However, for large models there may be requirements for a hefty computer.

The tables below showing computer specifications and model run-time should help you compare systems.

In this page we outline a hardware benchmark model which is available to download from FMA2_GPU_CPU_Benchmark.zip the model can be simulated without a TUFLOW dongle (license). This makes it easy to benchmark on a range of computers and the results are compiled below.

We have typically found that for TUFLOW Classic, the CPU speed is the largest influence on TUFLOW runtimes, with the RAM speed also having an influence for large models. When using GPU hardware (available for TUFLOW HPC), the Graphics Card has the largest influence, specifically the number and speed of the CUDA cores. In order to quantify this we are compiling the computational times required for a range of different machines.

Benchmark Model

Background

The benchmark model is based on a “challenge” issued prior to the 2012 Flood Managers Association (FMA) Conference in Sacramento, USA. There is more information on the model setup and purpose in the FMA challenge model introduction.
This hardware benchmark is based on the second challenge which involves a coastal river in flood with two ocean outlets. The model has been modified slightly (mainly in terms of the outputs). It is setup to use both the TUFLOW Classic (CPU) and TUFLOW HPC (on both CPU and GPU hardware) for a range of cell sizes.

Cell Size (m) Number of cells
20.0 181,981
10.0 727,865
5.0 2,911,472
2.5 11,645,341

The model runs for three days of simulation time (72 hours). The approximate run time for the 30m model on the CPU is likely to be ~20min and for the 15m version approximately 4 hours. Given the runtime for the CPU model at 10m resolution is likely to be > 12 hours, this is skipped in the benchmark (this can also be run without a licence).

Models


The simulated models are:

  • 20m model - TUFLOW Classic
  • 20m model - TUFLOW HPC CPU - 2 Cores (default)
  • 20m model - TUFLOW HPC - GPU Hardware
  • 10m model - TUFLOW HPC - GPU Hardware

The user also has an option to run a couple of bigger models on GPU hardware as part of the High End GPU Benchmarking. To run these models, please follow the steps outlined in the below section.
HIGH END GPU BENCHMARKING MODELS

  • 5m model - TUFLOW HPC - GPU Hardware
  • 2.5m model - TUFLOW HPC - GPU Hardware

To Participate

To participate in the benchmark, please follow the steps below:

  1. Download the model from FMA2_GPU_CPU_Benchmark.zip.
  2. Extract the model on a local drive of the computer you would like to benchmark.
  3. Navigate to the TUFLOW\runs\ folder and run the Run_Benchmark.bat file. This checks if you are running a 32 or 64 bit system and then runs the benchmark. This also generates some output files that contain more information on the processor, memory and GPU card that you are using.
  4. If you have a high performance GPU Card you can also run the Run_Benchmark_HighPerformance_GPU.bat.
  5. Email the _ TUFLOW Simulations.log, cpu.txt, ram.txt and GPU.txt files to support@tuflow.com and we will includes these in the results tables below.

The computer information is determined in the batch file using the wmic and dxdiag commands.

Note An NVIDIA graphics card that is CUDA compatible is required to run the GPU model.

List of Benchmarking Runtimes and Discussions

Benchmarking Runtimes (2018-03-AA Release)

Discussion Topics

Previous Benchmarking Runtimes (2013-12-AD)

Hardware Selection Advice


Up
Go-up.png TUFLOW Main Page