Upcoming SlideShare
×

# SpeedIT FLOW

1,457 views

Published on

SpeedIT FLOW is a RANS single-phase fluid flow solver that runs fully on GPU. It supports OpenFOAM format and is about 3x faster than OpenFOAM running on 2xCPU.

1 Comment
2 Likes
Statistics
Notes
• Full Name
Comment goes here.

Are you sure you want to Yes No
• The next goal is to replace diagonal preconditioner with Algebraic Multigrid preconditioner to further accelerate the whole solver on GPU.

Are you sure you want to  Yes  No
Views
Total views
1,457
On SlideShare
0
From Embeds
0
Number of Embeds
38
Actions
Shares
0
0
1
Likes
2
Embeds 0
No embeds

No notes for slide

### SpeedIT FLOW

1. 1. SpeedIT FLOW: a GPU success story
2. 2. A GPU Success Story in 5 steps* * Compare with Accelerated ANSYS Fluent presentation by Robert Strzodka (NVIDIA).
3. 3. Step 1: Identify the application OpenFOAM Computational Fluid Dynamics Why OpenFOAM*: Free to use and open source, more and more popular in CFD community. Large user base across engineering industries, e.g. car, oil&gas, material, aviation, etc OPENFOAM® is a registered trademark of ESI Group. This offering is not approved or endorsed by ESI Group, the producer of the OpenFOAM software and owner of the OPENFOAM® and OpenCFD® trademarks.
4. 4. Step 2: Identify the bottlenecks GPU ◼Partial acceleration (see Fig.) is not effective. ◼ofgpu (from Symscape), Culises (Fluidyna), NVIDIA (nvAMG) offer the mild acceleration for non-linear problems. ◼Maximal acceleration vs. Intel Xeon : ca. 1.8x (nvAMG). Problem: Amdahl’s Law should not be ignored. Solution: Implement the whole solver on GPU. Assemble Linear System of Equations Solve Linear System of Equations Converged ? ca. 40% of Runtime ca. 60% of Runtime Fig. Navier Stokes Equation calculation scheme.
5. 5. Step 3: Parallelize the Algorithm ◼Implement non-linear solvers fully on GPU: ◼PISO and SIMPLE flow solvers* ◼AMG preconditioner (CUSP). ◼kOmegaSST turbulence model. ◼Various boundary conditions. * Acceleration of Iterative Navier-Stokes solvers on GPUs, Int J Comp Fluid Dynamics 07/2013; 27(4-5):201-209 GPU Assemble Linear System of Equations Solve Linear System of Equations Converged?
6. 6. Step 4: Create Production-ready Library ◼Team of GPU specialists, physicists (Vratis, Wroclaw universities). ◼Understand the algorithm, parallelize with caution, adapt to GPU hardware limitations. ◼Invest in validation and testing with industrial partners. ◼Have fun working with industry leaders!
7. 7. Step 5: Enjoy the acceleration Motorbike (OpenFOAM tutorial) 6.5M cells. external, aero, turbulent flow. simpleFoam, double precision Meshing on CPU Solving on GPU x.3.18 acceleration
8. 8. Step 5: Enjoy the acceleration Aero* (based on Motorbike) 3M cells external, aero, turbulent flow. simpleFoam, double precision Meshing on CPU, solving on GPU x.2.76 acceleration * Geometry obtained from 4-id network.
9. 9. Step 5: Enjoy the acceleration Solar Car* (based on Motorbike) 3.7M cells external, aero, turbulent flow. simpleFoam, double precision Meshing on CPU Solving on GPU x.2.85 acceleration * Geometry obtained from 4-id network.
10. 10. SpeedIT FLOW: Hardware Hardware: CPU: 2 x Intel Xeon E5649 12M Cache, 2.53 GHz, 5.86 GT/s Intel® QPI, 96GB RAM 1333 MHz # cores: 2x6 # threads: 2x12 Software: OpenFOAM 2.1 GPU: Quadro K6000 12GB GDDR5 SDRAM OS: Ubuntu 12.04.4 LTS, 64 bit Software: SpeedIT FLOW
11. 11. SpeedIT FLOW: OpenFOAM accelerator Use your GPU as an external accelerator for your OpenFOAM cases and use CPU as usual. 4 Aero Simulations on CPU: 4 x 5493 sec (12 CPU cores occupied) 4 Aero Simulations on GPU: 4 x 2100 sec. (1 CPU core occupied) … and your CPU is still not busy! You can use it for meshing, visualization, another simulations (Fig: 3xGPU + 1x11 CPU cores is 3.2x faster!).
12. 12. What is SpeedIT FLOW ?
13. 13. SpeedIT FLOW 1.0 ◼Integration: Dynamically linked library with public C-interface, Easy to use API. ◼Reader/Writer of OpenFOAM* cases. ◼GPU accelerated solvers: gico, gsimple, gpiso ◼Turbulence model: kOmegaSST. ◼Solves problem with geometries up to 7 million cells on a single card (with 12GB GPU RAM). ◼Supports AMD** and NVIDIA cards. * Tested with OpenFOAM ver. 2.0.1 ** SpeedIT FLOWCL to be released.
14. 14. SpeedIT FLOW: usage ◼Run from command line simpleFoamToSpeedITflow -case ./myCaseInOF #OpenFOAM -> SpeedIT FLOW format conversion gpiso ./myCaseInOF & #solves the case on GPU. Use CPU for other tasks. paraFoam -case ./myCaseInOF # visualize the result. ◼Use API
15. 15. Don’t wait. Just SpeedIT. Vratis Muchoborska 18 50-424 Wroclaw, Poland Questions? Contact us at: info@vratis.com