hardware acceleration of computional fluid dynamics simulations in an oxygenator - part 2

24
Politecnico di Milano Dipartimento di Elettronica, Informazione e Bioingegneria (DEIB) Hardware Acceleration of Computational Fluid Dynamics Simulations in an Oxygenator Work progress Chiara Gatti [email protected] B3Lab, May 30th 2016 Guido Lanfranchi [email protected] HAMS project

Upload: hamsproject

Post on 15-Apr-2017

182 views

Category:

Devices & Hardware


0 download

TRANSCRIPT

Page 1: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

Politecnico di MilanoDipartimento di Elettronica, Informazione e Bioingegneria (DEIB)

Hardware Acceleration of

Computational Fluid Dynamics

Simulations in an Oxygenator

Work progress

Chiara [email protected]

B3Lab, May 30th 2016

Guido [email protected]

HAMSproject

Page 2: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

1

Our goal

Study an oxygenator for ECC through a lumped

parameters model in MATLAB and accelerate the

simulation by means of an FPGA-based system

Page 3: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

1

Our goal

Study an oxygenator for ECC through a lumped

parameters model in MATLAB and accelerate the

simulation by means of an FPGA-based system

Page 4: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

1

Our goal

Study an oxygenator for ECC through a lumped

parameters model in MATLAB and accelerate the

simulation by means of an FPGA-based system

Lumped

parameters

model

Page 5: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

1

Our goal

Study an oxygenator for ECC through a lumped

parameters model in MATLAB and accelerate the

simulation by means of an FPGA-based system

Lumped

parameters

model

Page 6: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

1

Our goal

Study an oxygenator for ECC through a lumped

parameters model in MATLAB and accelerate the

simulation by means of an FPGA-based system

Lumped

parameters

model

Page 7: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

2

Progress

Context

(the oxygenator)

Implementation

(SW-HW)Validation

Page 8: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

3

Context

(the oxygenator)

Implementation

(SW-HW)Validation

Until 04.05

Progress

Page 9: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

4

Context

(the oxygenator)

Implementation

(SW-HW)Validation

Until 04.05 TODAY

Progress

Page 10: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

Implementation

Model = linear system

Solution achieved through matrix inversion

(Moore-Penrose Pseudoinverse)

5

Page 11: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

Implementation

Model = linear system

Solution achieved through matrix inversion

(Moore-Penrose Pseudoinverse)

SVD methodGreville’s algo Others

5

Page 12: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

Implementation

Model = linear system

Solution achieved through matrix inversion

(Moore-Penrose Pseudoinverse)

SVD methodGreville’s algo Others

QR method Jacobi Others

5

Page 13: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

6

Implementation

Jacobi method: accuracy and parallelism

for (n_times)

split matrix into columns

compute c,s for each couple

update columns

end

until convergence

multiply&accumulate

streaming computation

Ãi Ãj

Coefficient

computation

Column

updateAi Aj

c,s

Page 14: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

7

Implementation

Sparse matrix

The matrix is generated through the device meshing

(with known meshing pattern)

Page 15: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

7

Implementation

Sparse matrix

The matrix is generated through the device meshing

(with known meshing pattern)

The modeled matrix is sparse

(with known pattern)

We identify non-null elements

through MATLAB script

Page 16: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

8

Methods

MATLAB

functionsHigh level

Low level

Vivado HLS Vivado SDK

FPGAs

Our framework

Page 17: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

9

Results

Page 18: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

10

Context

(the oxygenator)

Implementation

(SW-HW)Validation

Until 04.05 From 1.06

Progress

Page 19: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

11

Validation

MAIN COMPARISONS

FPGAs

Page 20: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

Validation

MAIN COMPARISONS

FPGAs

vs vs

11

Page 21: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

Validation

KEY PARAMETERS

imgflip.com

SPEEDUP

vs competitors

12

Page 22: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

Validation

KEY PARAMETERS

imgflip.com

SPEEDUP

vs competitors

POWER

REQUIREMENTS

12

Page 23: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

Validation

KEY PARAMETERS

imgflip.com

SPEEDUP

vs competitors

POWER

REQUIREMENTS

EASE OF USE

12

Page 24: Hardware Acceleration of Computional Fluid Dynamics Simulations in an Oxygenator - Part 2

QUESTIONS?

Contact us!

HAMSproject

[email protected]

[email protected]

[email protected]

www.facebook.com/hams.project

https://twitter.com/HAMS_project

http://www.slideshare.net/HAMSproject