1. Politecnico di Milano
Dipartimento di Elettronica, Informazione e Bioingegneria (DEIB)
Hardware Acceleration of
Computational Fluid Dynamics
Simulations in an Oxygenator
Work progress
Chiara Gatti
chiara1.gatti@mail.polimi.it
B3Lab, May 30th 2016
Guido Lanfranchi
guido2.lanfranchi@mail.polimi.it
HAMSproject
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
3. 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
4. 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
5. 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
6. 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
11. Implementation
Model = linear system
Solution achieved through matrix inversion
(Moore-Penrose Pseudoinverse)
SVD methodGreville’s algo Others
5
12. Implementation
Model = linear system
Solution achieved through matrix inversion
(Moore-Penrose Pseudoinverse)
SVD methodGreville’s algo Others
QR method Jacobi Others
5
13. 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
update
Ai Aj
c,s
15. 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