Caractéristiques arithmétiques des processeurs graphiques
Marc Daumas, Guillaume Da Graça, David Defour
Abstract
Les unités graphiques (Graphic Processing Units- GPU) sont désormais des processeurs puissants et flexibles. Les dernières générations de GPU contiennent des unités programmables de traitement des sommets (vertex shader) et des pixels (pixel shader) supportant des opérations en virgule flottante sur 8, 16 ou 32 bits. La représentation flottante sur 32 bits correspond à la simple précision de la norme IEEE sur l'arithmétique en virgule flottante (IEEE-754). Les GPU sont bien adaptés aux applications avec un fort parallélisme de données. Cependant ils ne sont que peu utilisés en dehors des calculs graphiques (General Purpose computation on GPU -- GPGPU). Une des raisons de cet état de faits est la pauvreté des documentations techniques fournies par les fabricants (ATI et Nvidia), particulièrement en ce qui concerne l'implantation des différents opérateurs arithmétiques embarqués dans les différentes unités de traitement. Or ces informations sont essentielles pour estimer et contrôler les erreurs d'arrondi ou pour mettre en oeuvre des techniques de réduction ou de compensation afin de travailler en précision double, quadruple ou arbitrairement étendue. Nous proposons dans cet article un ensemble de programmes qui permettent de découvrir les caractéristiques principales des GPU en ce qui concerne l'arithmétique à virgule flottante. Nous donnons les résultats obtenus sur deux cartes graphiques récentes: la Nvidia 7800GTX et l'ATI RX1800XL.
Create a lesson
Related papers
The Pauli Lightcone: Information-Theoretic Error Mitigation Beyond the Autocorrelation
Paolo D'Alberto
Opal.jl: a comprehensive, composable framework for data assimilation in Julia
Nicholas Mueller
ADDA: a Modular Framework for Representing, Simulating and Assimilating Dynamics with End-to-end Differentiability
Anthony Frion, Vien Minh Nguyen-Thanh, Ali Can Bekar et al.
Eigensolvers for polynomial roots and tensor decomposition
Enrica Barrilli, Bernard Mourrain
DSLHyPE-a DSL kernel language for the Exascale Hyperbolic PDE Engine ExaHyPE
Timothy J. R. Stokes, Nick Brown, Thomas A. Flynn et al.
Tensor Network Kernel Machines: A JAX Framework for Machine Learning and Nonlinear System Identification
Albert Saiapin, Kim Batselier