Différences entre les versions de « CUDA »
Ligne 13 : | Ligne 13 : | ||
=== Pour démarrer à programmer en CUDA === | === Pour démarrer à programmer en CUDA === | ||
− | Pour une introduction au language CUDA et à la programmation sur GPU en général, consultez les présentations suivantes: | + | Pour une introduction au language CUDA et à la programmation sur GPU en général, consultez les présentations suivantes : |
* [http://www.dms.umontreal.ca/downloads/CUDA/Presentation2010.pdf Séminaire sur la programmation GPU donné au DMS le 4 octobre 2010] | * [http://www.dms.umontreal.ca/downloads/CUDA/Presentation2010.pdf Séminaire sur la programmation GPU donné au DMS le 4 octobre 2010] | ||
Ligne 22 : | Ligne 22 : | ||
=== Documents de référence utiles === | === Documents de référence utiles === | ||
− | Plusieurs documents de référence, fournis avec chaque [http://developer.nvidia.com/cuda-downloads installation de CUDA], sont disponibles dans le répertoire <tt>/usr/local/cuda/cudaX/doc/</tt>, où le "X" de <tt>cudaX</tt> compte pour la version de CUDA désirée, par exemple <tt>cuda31</tt>. Voici une courte liste des documents qui risquent de vous être les plus utiles: | + | Plusieurs documents de référence, fournis avec chaque [http://developer.nvidia.com/cuda-downloads installation de CUDA], sont disponibles dans le répertoire <tt>/usr/local/cuda/cudaX/doc/</tt>, où le "X" de <tt>cudaX</tt> compte pour la version de CUDA désirée, par exemple <tt>cuda31</tt>. Voici une courte liste des documents qui risquent de vous être les plus utiles : |
* [http://www.dms.umontreal.ca/downloads/CUDA/CUDA_C_Programming_Guide.pdf ''CUDA C Programming Guide'' - Guide détaillé comportant plusieurs exemples et pouvant faire office de manuel d'introduction à CUDA] | * [http://www.dms.umontreal.ca/downloads/CUDA/CUDA_C_Programming_Guide.pdf ''CUDA C Programming Guide'' - Guide détaillé comportant plusieurs exemples et pouvant faire office de manuel d'introduction à CUDA] | ||
Ligne 31 : | Ligne 31 : | ||
* [http://www.dms.umontreal.ca/downloads/CUDA/CUFFT_Library.pdf ''CUFFT Library'' - Guide de référence de la librairie ''CUDA Fast Fourier Transform''] | * [http://www.dms.umontreal.ca/downloads/CUDA/CUFFT_Library.pdf ''CUFFT Library'' - Guide de référence de la librairie ''CUDA Fast Fourier Transform''] | ||
− | '''N.B.:''' Les documents proposés par les liens ci-haut sont tirés de la version 3.2.9 de CUDA. | + | '''N.B. :''' Les documents proposés par les liens ci-haut sont tirés de la version 3.2.9 de CUDA. |
== Exemples == | == Exemples == | ||
− | Voici quelques exemples pour vous aider à démarrer avec CUDA: | + | Voici quelques exemples pour vous aider à démarrer avec CUDA : |
* [http://www.dms.umontreal.ca/downloads/CUDA/exemples/AddVec.cu Addition de vecteurs/matrices avec code CUDA] | * [http://www.dms.umontreal.ca/downloads/CUDA/exemples/AddVec.cu Addition de vecteurs/matrices avec code CUDA] |
Version du 16 mai 2013 à 14:11
CUDA (Compute Unified Device Architecture) est une technologie de GPGPU (General-Purpose Computing on Graphics Processing Units), c'est-à-dire qui permet l'utilisation d'un ou plusieurs processeurs graphiques (GPU) pour exécuter des calculs généraux habituellement exécutés par le processeur central (CPU).
CUDA désigne également une extension du langage C qui permet la programmation des GPU à architecture CUDA.
Guide
Pour démarrer à programmer en CUDA
Pour une introduction au language CUDA et à la programmation sur GPU en général, consultez les présentations suivantes :
- Séminaire sur la programmation GPU donné au DMS le 4 octobre 2010
- Introduction to CUDA C - Présentation par Jason Sanders, programmeur sénior chez NVIDA
- A beginner's guide to programming GPUs with CUDA - Bonne introduction à CUDA, par Mike Peardon
- Scientific Computing on a GPU Using CUDA - Autre bonne introduction au sujet
Documents de référence utiles
Plusieurs documents de référence, fournis avec chaque installation de CUDA, sont disponibles dans le répertoire /usr/local/cuda/cudaX/doc/, où le "X" de cudaX compte pour la version de CUDA désirée, par exemple cuda31. Voici une courte liste des documents qui risquent de vous être les plus utiles :
- CUDA C Programming Guide - Guide détaillé comportant plusieurs exemples et pouvant faire office de manuel d'introduction à CUDA
- The CUDA Compiler Driver NVCC - Guide concernant l'utilisation du compilateur NVCC
- CUDA C Best Practices Guide - S'adresse aux utilisateurs plus avancés désirant approfondir leurs connaissances de la programmation GPU
- Reference Manual - Document de référence décrivant en détails chacune des fonctions de CUDA
- CUBLAS Library - Guide de référence de la librairie CUDA Basic Linear Algebra Subprograms
- CUFFT Library - Guide de référence de la librairie CUDA Fast Fourier Transform
N.B. : Les documents proposés par les liens ci-haut sont tirés de la version 3.2.9 de CUDA.
Exemples
Voici quelques exemples pour vous aider à démarrer avec CUDA :
- Addition de vecteurs/matrices avec code CUDA
- Addition de vecteurs/matrices sous MATLAB (fichier compilé "MEX"
- Addition de vecteurs/matrices sous MATLAB (fichier compilé "MEX") avec code CUDA
- Addition de vecteurs/matrices déclarées avec le toolbox "GPUmat" sous MATLAB (fichier compilé "MEX")