CUDA® is a parallel computing platform and programming model invented by NVIDIA. With CUDA, engineers and scientists harness the enormous computing power of graphics processing units (GPUs) through commonly used languages including C, C++, Fortran, Python and MATLAB. GPU-accelerated applications run the sequential part of their workload on the CPU – which is optimized for single-threaded performance – while using CUDA to execute the compute intensive portion of the application on the GPU. GPU-accelerated applications perform many times faster than CPUs.

To use CUDA in your application, download the free CUDA Toolkit from NVIDIA.

Download Now

Thousands of applications developed with CUDA have been deployed to GPUs in embedded systems, workstations, datacenters and in the cloud.

See More Applications

CUDA serves as a common platform across all NVIDIA GPU families so you can deploy and scale your application across GPU configurations.





The first GPUs were designed as graphics accelerators, becoming more programmable over the 90s, culminating in NVIDIA's first GPU in 1999. Researchers and scientists rapidly began to apply the excellent floating point performance of this GPU for general purpose computing. In 2003, a team of researchers led by Ian Buck unveiled Brook, the first widely adopted programming model to extend C with data-parallel constructs. Ian Buck later joined NVIDIA and led the launch of CUDA in 2006, the world's first solution for general-computing on GPUs.

Since its inception, the CUDA ecosystem has grown rapidly to include software development tools, services and partner-based solutions. The CUDA Toolkit includes libraries, debugging and optimization tools, a compiler and a runtime library to deploy your application. You'll also find code samples, programming guides, user manuals, API references and other documentation to help you get started.




Math Library




See More Libraries

Tools and Integrations


Visual Profiler


CUDA MemCheck


CUDA Profiling Tools Interface

See More Tools

CUDA accelerates applications across a wide range of domains from image processing, to deep learning, numerical analytics and computational science.

More Applications

Get started with CUDA by downloading the CUDA Toolkit and exploring introductory resources including videos, code samples, hands-on labs and webinars.