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 Accéder directement au contenu
Communication Dans Un Congrès Année : 2013

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

Résumé

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.

Mots clés

Fichier principal
Vignette du fichier
crossignon_solver_gpu_compas2013.pdf (159.8 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)

Dates et versions

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

Identifiants

  • HAL Id : hal-00773571 , version 1

Citer

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-00773571v1⟩
515 Consultations
2492 Téléchargements

Partager

Gmail Facebook X LinkedIn More