Assess OpenMP speedup for latest version of FDS.
This project is inspired by OpenMP benchmark conducted by Thunderhead Engineering in 08/2014. Run this benchmark when newer FDS versions are released.
This project provides a working FDS environment out-of-the-box. The only requisite is an installation of Vagrant and a Hypervisor like VMware, VirtualBox or Hyper-V. Vagrant runs on Windows, Linux, MacOSX machines.
vagrant@vagrant-ubuntu-trusty-64:~$ FDS-6.3/bin/fds
Fire Dynamics Simulator
Current Date : November 6, 2015 16:08:42
Version : FDS 6.3.0
Revision : Git-r1-12-gf7f4148
Revision Date : Wed Sep 30 23:20:47 2015 -0400
Compilation Date : Oct 01, 2015 08:23:41
MPI Enabled; Number of MPI Processes: 1
OpenMP Enabled; Number of OpenMP Threads: 4
Consult FDS Users Guide Chapter, Running FDS, for further instructions.
Hit Enter to Escape...
A simple burner that uses 1 mesh with 1.5 million cells and simulates 10 seconds of model time. This model was designed to give good OpenMP performance based on guidance in the NIST wiki document Running FDS with OpenMP which suggests that cell counts in the 0.5 million to 2 million cell range will demonstrate the most speedup as additional threads are added.
Running the FDS model is easy as pie.
vagrant@vagrant-ubuntu-trusty-64:/vagrant/burner-4$ ~/FDS/bin/fds burner-4.fds
Mesh 1 is assigned to MPI Process 0
OpenMP thread 0 of 3 assigned to MPI process 0 of 0
OpenMP thread 2 of 3 assigned to MPI process 0 of 0
OpenMP thread 3 of 3 assigned to MPI process 0 of 0
OpenMP thread 1 of 3 assigned to MPI process 0 of 0
Fire Dynamics Simulator
Current Date : November 6, 2015 16:22:28
Version : FDS 6.3.0
Revision : Git-r1-12-gf7f4148
Revision Date : Wed Sep 30 23:20:47 2015 -0400
Compilation Date : Oct 01, 2015 08:23:41
MPI Enabled; Number of MPI Processes: 1
OpenMP Enabled; Number of OpenMP Threads: 4
Job TITLE :
Job ID string : burner-4
Time Step: 1, Simulation Time: 0.02 s
Time Step: 2, Simulation Time: 0.04 s
Time Step: 3, Simulation Time: 0.05 s
Time Step: 4, Simulation Time: 0.07 s
Time Step: 5, Simulation Time: 0.09 s
Time Step: 6, Simulation Time: 0.11 s
- compare OpenMP speedup of latest versions of FDS (6.1, 6.2, 6.3)
- run model using 1-4 OpenMP threads (upper limit corresponds to available cores)
- Limit the number of threads using the OpenMP Environment to match the number of physical cores. Hyper Threading is not increasing the performance.
- manage MPI installation/configuration
- manage environment variables like
LD_LIBRARY_PATH
export LD_LIBRARY_PATH=$PATH_TO_FDS_INSTALLATION/bin/LIB64:$LD_LIBRARY_PATH
- manage user limits for Linux and MacOSX systems
Introduction Page
Write Larger Documentation
- Getting Started with GitHub Pages <<<<<<< HEAD
Continuous Documentation
Add more examples
- Thunderhead Engineering provides plenty of Pyrosim Tutorials
- Interactive Data Exploration using Smokeview & IPython Notebook
- Script creation of 2D & 3D resources
Here’s how we suggest you go about proposing a change to this project:
- Fork this project to your account.
- Create a branch for the change you intend to make.
- Make your changes to your fork.
- Send a pull request from your fork’s branch to our
master
branch.
Using the web-based interface to make changes is fine too, and will help you by automatically forking the project and prompting to send a pull request too.
MIT.