CUDA

CUDA
Developer(s)Nvidia
Initial releaseJune 23, 2007; 17 years ago (2007-06-23)
Stable release
12.6 / August 2024; 3 months ago (2024-08)
Operating systemWindows, Linux
PlatformSupported GPUs
TypeGPGPU
LicenseProprietary
Websitedeveloper.nvidia.com/cuda-zone

In computing, CUDA (originally Compute Unified Device Architecture) is a proprietary[1] parallel computing platform and application programming interface (API) that allows software to use certain types of graphics processing units (GPUs) for accelerated general-purpose processing, an approach called general-purpose computing on GPUs (GPGPU). CUDA API and its runtime: The CUDA API is an extension of the C programming language that adds the ability to specify thread-level parallelism in C and also to specify GPU device specific operations (like moving data between the CPU and the GPU).[2] CUDA is a software layer that gives direct access to the GPU's virtual instruction set and parallel computational elements for the execution of compute kernels.[3] In addition to drivers and runtime kernels, the CUDA platform includes compilers, libraries and developer tools to help programmers accelerate their applications.

CUDA is designed to work with programming languages such as C, C++, Fortran and Python. This accessibility makes it easier for specialists in parallel programming to use GPU resources, in contrast to prior APIs like Direct3D and OpenGL, which require advanced skills in graphics programming.[4] CUDA-powered GPUs also support programming frameworks such as OpenMP, OpenACC and OpenCL.[5][3]

CUDA was created by Nvidia in 2006.[6] When it was first introduced, the name was an acronym for Compute Unified Device Architecture,[7] but Nvidia later dropped the common use of the acronym and now rarely expands it.[8]

  1. ^ Shah, Agam. "Nvidia not totally against third parties making CUDA chips". www.theregister.com. Retrieved 2024-04-25.
  2. ^ Nvidia. "What is CUDA?". Nvidia. Retrieved 21 March 2024.
  3. ^ a b Abi-Chahla, Fedy (June 18, 2008). "Nvidia's CUDA: The End of the CPU?". Tom's Hardware. Retrieved May 17, 2015.
  4. ^ Zunitch, Peter (2018-01-24). "CUDA vs. OpenCL vs. OpenGL". Videomaker. Retrieved 2018-09-16.
  5. ^ "OpenCL". NVIDIA Developer. 2013-04-24. Retrieved 2019-11-04.
  6. ^ "Nvidia CUDA Home Page". 18 July 2017.
  7. ^ Shimpi, Anand Lal; Wilson, Derek (November 8, 2006). "Nvidia's GeForce 8800 (G80): GPUs Re-architected for DirectX 10". AnandTech. Retrieved May 16, 2015.
  8. ^ "Introduction — nsight-visual-studio-edition 12.6 documentation". docs.nvidia.com. Retrieved 2024-10-10.