Acceleration strategies for Tridimensional Coupled hydromechanical problems based on CPU and GPU programming in MATLAB

Abstract Large-scale fluid flow in porous media demands intense computations and occurs in the most diverse applications, including groundwater flow and oil recovery. This article presents novel computational strategies applied to reservoir geomechanics. Advances are proposed for the efficient assembly of finite element matrices and the solution of linear systems using highly vectorized code in MATLAB. In the CPU version, element matrix assembly is performed using conventional vectorization procedures, based on two strategies: the explicit matrices, and the multidimensional products. Further assembly of the global sparse matrix is achieved using the native sparse function. For the GPU version, computation of the complete set of element matrices is performed with the same strategies as the CPU approach, using gpuArray structures and the native CUDA support provided by MATLAB Parallel Computing Toolbox. Solution of the resulting linear system in CPU and GPU versions is obtained with two strategies using a one-way approach: the native conjugate gradient solver (pcg), and the one provided by the Eigen library. A broad discussion is presented in a dedicated benchmark, where the different strategies using CPU and GPU are compared in processing time and memory requirements. These analyses present significant speedups over serial codes.

Saved in:
Bibliographic Details
Main Authors: JOSEPH,JEAN B., RIBEIRO,PAULO MARCELO V., GUIMARÃES,LEONARDO J.N., CHAVES JUNIOR,CICERO VITOR, TEIXEIRA,JONATHAN DA C.
Format: Digital revista
Language:English
Published: Academia Brasileira de Ciências 2022
Online Access:http://old.scielo.br/scielo.php?script=sci_arttext&pid=S0001-37652022000801702
Tags: Add Tag
No Tags, Be the first to tag this record!
id oai:scielo:S0001-37652022000801702
record_format ojs
spelling oai:scielo:S0001-376520220008017022022-12-16Acceleration strategies for Tridimensional Coupled hydromechanical problems based on CPU and GPU programming in MATLABJOSEPH,JEAN B.RIBEIRO,PAULO MARCELO V.GUIMARÃES,LEONARDO J.N.CHAVES JUNIOR,CICERO VITORTEIXEIRA,JONATHAN DA C. Computational efficiency explicit matrix finite elements geomechanical problem GPU programming sparse stiffness matrices Abstract Large-scale fluid flow in porous media demands intense computations and occurs in the most diverse applications, including groundwater flow and oil recovery. This article presents novel computational strategies applied to reservoir geomechanics. Advances are proposed for the efficient assembly of finite element matrices and the solution of linear systems using highly vectorized code in MATLAB. In the CPU version, element matrix assembly is performed using conventional vectorization procedures, based on two strategies: the explicit matrices, and the multidimensional products. Further assembly of the global sparse matrix is achieved using the native sparse function. For the GPU version, computation of the complete set of element matrices is performed with the same strategies as the CPU approach, using gpuArray structures and the native CUDA support provided by MATLAB Parallel Computing Toolbox. Solution of the resulting linear system in CPU and GPU versions is obtained with two strategies using a one-way approach: the native conjugate gradient solver (pcg), and the one provided by the Eigen library. A broad discussion is presented in a dedicated benchmark, where the different strategies using CPU and GPU are compared in processing time and memory requirements. These analyses present significant speedups over serial codes.info:eu-repo/semantics/openAccessAcademia Brasileira de CiênciasAnais da Academia Brasileira de Ciências v.94 suppl.4 20222022-01-01info:eu-repo/semantics/articletext/htmlhttp://old.scielo.br/scielo.php?script=sci_arttext&pid=S0001-37652022000801702en10.1590/0001-3765202220211024
institution SCIELO
collection OJS
country Brasil
countrycode BR
component Revista
access En linea
databasecode rev-scielo-br
tag revista
region America del Sur
libraryname SciELO
language English
format Digital
author JOSEPH,JEAN B.
RIBEIRO,PAULO MARCELO V.
GUIMARÃES,LEONARDO J.N.
CHAVES JUNIOR,CICERO VITOR
TEIXEIRA,JONATHAN DA C.
spellingShingle JOSEPH,JEAN B.
RIBEIRO,PAULO MARCELO V.
GUIMARÃES,LEONARDO J.N.
CHAVES JUNIOR,CICERO VITOR
TEIXEIRA,JONATHAN DA C.
Acceleration strategies for Tridimensional Coupled hydromechanical problems based on CPU and GPU programming in MATLAB
author_facet JOSEPH,JEAN B.
RIBEIRO,PAULO MARCELO V.
GUIMARÃES,LEONARDO J.N.
CHAVES JUNIOR,CICERO VITOR
TEIXEIRA,JONATHAN DA C.
author_sort JOSEPH,JEAN B.
title Acceleration strategies for Tridimensional Coupled hydromechanical problems based on CPU and GPU programming in MATLAB
title_short Acceleration strategies for Tridimensional Coupled hydromechanical problems based on CPU and GPU programming in MATLAB
title_full Acceleration strategies for Tridimensional Coupled hydromechanical problems based on CPU and GPU programming in MATLAB
title_fullStr Acceleration strategies for Tridimensional Coupled hydromechanical problems based on CPU and GPU programming in MATLAB
title_full_unstemmed Acceleration strategies for Tridimensional Coupled hydromechanical problems based on CPU and GPU programming in MATLAB
title_sort acceleration strategies for tridimensional coupled hydromechanical problems based on cpu and gpu programming in matlab
description Abstract Large-scale fluid flow in porous media demands intense computations and occurs in the most diverse applications, including groundwater flow and oil recovery. This article presents novel computational strategies applied to reservoir geomechanics. Advances are proposed for the efficient assembly of finite element matrices and the solution of linear systems using highly vectorized code in MATLAB. In the CPU version, element matrix assembly is performed using conventional vectorization procedures, based on two strategies: the explicit matrices, and the multidimensional products. Further assembly of the global sparse matrix is achieved using the native sparse function. For the GPU version, computation of the complete set of element matrices is performed with the same strategies as the CPU approach, using gpuArray structures and the native CUDA support provided by MATLAB Parallel Computing Toolbox. Solution of the resulting linear system in CPU and GPU versions is obtained with two strategies using a one-way approach: the native conjugate gradient solver (pcg), and the one provided by the Eigen library. A broad discussion is presented in a dedicated benchmark, where the different strategies using CPU and GPU are compared in processing time and memory requirements. These analyses present significant speedups over serial codes.
publisher Academia Brasileira de Ciências
publishDate 2022
url http://old.scielo.br/scielo.php?script=sci_arttext&pid=S0001-37652022000801702
work_keys_str_mv AT josephjeanb accelerationstrategiesfortridimensionalcoupledhydromechanicalproblemsbasedoncpuandgpuprogramminginmatlab
AT ribeiropaulomarcelov accelerationstrategiesfortridimensionalcoupledhydromechanicalproblemsbasedoncpuandgpuprogramminginmatlab
AT guimaraesleonardojn accelerationstrategiesfortridimensionalcoupledhydromechanicalproblemsbasedoncpuandgpuprogramminginmatlab
AT chavesjuniorcicerovitor accelerationstrategiesfortridimensionalcoupledhydromechanicalproblemsbasedoncpuandgpuprogramminginmatlab
AT teixeirajonathandac accelerationstrategiesfortridimensionalcoupledhydromechanicalproblemsbasedoncpuandgpuprogramminginmatlab
_version_ 1756472269843988481