vignette|upright=1.5|Schéma de principe de l'architecture CUDA CUDA (initialement l'acronyme de Compute Unified Device Architecture) est une technologie de GPGPU (General-Purpose Computing on Graphics Processing Units), c'est-à-dire utilisant un processeur graphique (GPU) pour exécuter des calculs généraux à la place du processeur central (CPU). En effet, ces processeurs comportent couramment de l'ordre d'un millier de circuits de calcul fonctionnant typiquement à , ce qui représente un potentiel très supérieur à un processeur central à , fût-il multicœurs et multi-threads. Cette utilisation requiert que le calcul à effectuer soit parallélisable. CUDA permet de programmer des GPU en C++. Elle est développée par Nvidia, initialement pour ses cartes graphiques GeForce 8 Series, et utilise un pilote unifié utilisant une technique de streaming (flux continu). Le premier kit de développement pour CUDA est publié le . Est réalisable en CUDA tout ce qui demande du calcul intensif maillable en deux ou trois dimensions, ainsi que ce qui est décomposable en calculs indépendants sur des facteurs premiers, tel que cassage de codes, cassage de mot de passe, calculs de structures, simulation de fluides, algorithmes de recuit simulé, calculs économétriques sur de très grandes matrices (des techniques de découpages de ces matrices en blocs permettent de largement en paralléliser le produit). L'architecture Tesla, qui offre selon Nvidia la puissance de calcul d'un superordinateur (4 téraflops en simple précision, 80 gigaflops en double précision) pour une somme de , est construite sur CUDA. L'architecture Pascal, introduite en 2016 avec les cartes GTX1080 et GTX1070 à 2560 cœurs (gravure en 16 nm) et qui utilise de la GDDR5X surcadençable à , est également utilisable avec CUDA. NVidia lui annonce 11 téraflops en simple précision. L'architecture Fermi, introduite en 2010 avec le GF100, est maintenant obsolète, les versions de CUDA ultérieures aux versions 8.0.x ne la prenant pas en charge.