Optimisation du produit matrice-vecteur creux sur architecture GPU pour un simulateur de réservoir - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Conference Papers Year : 2013

Optimisation du produit matrice-vecteur creux sur architecture GPU pour un simulateur de réservoir

Abstract

For the Total Company, simulating reservoirs is an important step in the process of optimizing production. Nowadays, these simulations run entirely on CPUs. Thus, we have attempted to accelerate the sparse matrix-vector product operators of the simulation by using GPUs. Common GPU libraries for sparse linear algebra use generic formats for sparse matrix storage, that are more or less performant on GPU but that do not allow to fully exploit the specific structure of the matrices used in the reservoir simulator. In order to exploit this structure, we have adapted for our matrices a storage format that enables us to accelerate with a 20x factor the sparse matrix-vector product on 3 GPUs in comparison with a 8-core CPU, and with a 1.5x factor on GPU in comparison with the generic matrix format used by NVIDIA in cuSPARSE.
Pour l'entreprise Total, la simulation de réservoir est une étape importante dans le processus d'optimisation de la production. Actuellement ces simulations s'exécutent entièrement sur CPU. Nous avons donc essayé d'accélérer les produits matrice-vecteur creux contenus dans le simulateur en utilisant des GPUs. Les bibliothèques GPU d'algèbre linéaire creux utilisent des formats génériques de stockage de matrices creuses qui sont plus ou moins performant sur GPU mais qui ne permettent pas d'exploiter la structure particulière des matrices utilisées dans le simulateur de réservoir. Pour exploiter cette structure, nous avons adapté pour nos matrices un format de stockage qui nous permet d'accélérer jusqu'à un facteur 20 le produit matrice-vecteur creux sur 3 GPUs par rapport à 8 coeurs CPU et d'un facteur 1,5 sur GPU par rapport aux formats génériques utilisée par NVIDIA dans cuSPARSE.

Keywords

Fichier principal
Vignette du fichier
solver_gpu.pdf (157.62 Ko) Télécharger le fichier
Origin Files produced by the author(s)
Loading...

Dates and versions

hal-00773571 , version 1 (14-01-2013)
hal-00773571 , version 2 (03-07-2014)

Identifiers

  • HAL Id : hal-00773571 , version 2

Cite

Corentin Rossignon. Optimisation du produit matrice-vecteur creux sur architecture GPU pour un simulateur de réservoir. ComPAS'13 / RenPar'21 - 21es Rencontres francophones du Parallélisme, Inria Grenoble, Jan 2013, Grenoble, France. ⟨hal-00773571v2⟩
516 View
2517 Download

Share

Gmail Mastodon Facebook X LinkedIn More