Parallelization of 2d lid driven cavity flow
Download
1 / 18

Parallelization of 2D Lid-Driven Cavity Flow - PowerPoint PPT Presentation


  • 301 Views
  • Uploaded on

Parallelization of 2D Lid-Driven Cavity Flow. Asif Salahuddin Ahmad Sharif Jens Kehne. Objectives. Our objectives. Numerical simulation of fluid dynamics, using the Lattice-Boltzmann method Parallelize the code using MPI Study speedup and scalability

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Parallelization of 2D Lid-Driven Cavity Flow' - dick


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Parallelization of 2d lid driven cavity flow

Parallelization of 2D Lid-Driven Cavity Flow

AsifSalahuddin

Ahmad Sharif

Jens Kehne

Parallelization of 2D Lid-Driven Cavity Flow


Objectives
Objectives

Parallelization of 2D Lid-Driven Cavity Flow


Our objectives
Our objectives

  • Numerical simulation of fluid dynamics, using the Lattice-Boltzmann method

  • Parallelize the code using MPI

    • Study speedup and scalability

  • Allow to run large problem sizes in reasonable time

    • Allow to run them at all, for that matter (memory requirements)

Parallelization of 2D Lid-Driven Cavity Flow


Concept
Concept

Parallelization of 2D Lid-Driven Cavity Flow


The lattice boltzmann method
The Lattice-Boltzmann method

  • The Lattice-Boltzmann equation:

  • Velocity directions:

Parallelization of 2D Lid-Driven Cavity Flow


Top down vs bottom up
Top-down vs. bottom-up

Partial

differential

equations

(Navier-Stokes)

Partial

differential

equations

(Navier-Stokes)

Discretization

Multi-scale analysis

Difference

equations

(Conserved Quantities?)

Discrete model (LGCA or LBM)

Parallelization of 2D Lid-Driven Cavity Flow


Fluid nodes
Fluid nodes

  • The entire problem is represented as a grid of fluid nodes

    • Fluid nodes hold velocities towards all neighbors

  • New grid state computed for discrete time steps

Parallelization of 2D Lid-Driven Cavity Flow


Wall bounceback
Wall bounceback

  • The fluid domain is surrounded by walls

  • On each timestep, the direction of links hitting a wall is reversed

  • Walls may be moving

    • Changes the momentum of the fluid close to it

Parallelization of 2D Lid-Driven Cavity Flow


Implementation
Implementation

Parallelization of 2D Lid-Driven Cavity Flow


Domain decomposition
Domain decomposition

  • Each processor processes part of the grid

    : Ghost nodes

    • Represent border nodesof the neighbors

      : Border nodes

    • Updated by neighbors

      : Inner nodes

    • We can update these alone

Parallelization of 2D Lid-Driven Cavity Flow


Automatic decomposition
Automatic decomposition

  • Factorize and merge

    • Factorize x and y dimension and #procs

    • Divide x and y by prime factors of #procs

  • Goal: Try to keep the processor’s grids as square as possible

    • Best relation between inner and border nodes

    • Minimizes communication

Parallelization of 2D Lid-Driven Cavity Flow


Automatic decomposition demo
Automatic decomposition - demo

#CPUs: 6 = 2 * 3

X-axis: 30 = 2 * 3 * 5

Y-axis: 20 = 2 * 2 * 5

30

# CPUs: 6

20

10

10

Parallelization of 2D Lid-Driven Cavity Flow


Optimizations
Optimizations

  • Overlapping wall bounceback and communication

    • About 5% speedup

  • Overlapping inner node computation with communication

    • Massive slowdown!

    • Probably due to cache effects

  • Making use of regular communication pattern

    • Slower (we have no idea why!)

Parallelization of 2D Lid-Driven Cavity Flow


Experimental results
Experimental results

Parallelization of 2D Lid-Driven Cavity Flow


Experimental setup
Experimental setup

  • Lonestar Linux cluster @ University of Texas

    • Part of the Teragrid project

  • 1300 compute nodes

  • 2 Intel Xeon 2.66 GHz dual-core CPUs per node

    • 42.6 GFLOPS/node

  • 8GB RAM/node

  • Linux kernel 2.6, 64 bit

  • Infiniband interconnect, fat tree topology

Parallelization of 2D Lid-Driven Cavity Flow


Actual speedup
Actual speedup

Parallelization of 2D Lid-Driven Cavity Flow


Relation to expected speedup
Relation to expected speedup

Parallelization of 2D Lid-Driven Cavity Flow


Questions
Questions

Parallelization of 2D Lid-Driven Cavity Flow