Taos Glossary

An explanation of industry terms that is a quick read, and knowledge base.


What is CUDA?

CUDA was established in 2006 by Nvidia as a parallel computing platform and programming model that would provide computing capabilities based on graphics processing units (also known as GPUs). To date, it has more than 20 million downloads and helps developers speed up application performance through GPU acceleration. CUDA has seen wide adoption across consumer and industrial sectors and is commonly used for high-performance computing and research applications.

How does CUDA work?

CUDA can sometimes be confused as a programming language or API. But there are now over 150 CUDA-based libraries, SDKs, and profiling and optimization tools, and thousands of GPU-accelerated applications have been built using the CUDA parallel computing platform. CUDA streamlines the implementation of cutting-edge GPU architecture for developers with high flexibility and programmability.

How is CUDA important?

CUDA’s architecture is designed for optimized usage of non-graphics GPU computations and doesn’t require algorithms for conversion. It has expanded functionality through integer arithmetic and bit-shift operations and opens hardware features that weren’t available from graphics APIs (such as shared memory). It allows developers to cache frequently used data at a higher performance rate and reduces sensitivity to the throughput of parallel algorithms in many apps.

Benefits of CUDA

CUDA is quickly adopted with a simple interface based on C/C++ and allows developers to write scalable programming. The CUDA compiler uses programming abstractions to leverage parallelism built into the CUDA programming model, which lowers the programming burden.

Common use cases for CUDA

Developers often use CUDA for efficient data transfers between system and video memory and for setting up data caches with higher bandwidth than texture lookups. CUDA can be employed for linear memory addressing and writing to arbitrary addresses, as well as providing hardware support for integer and bit operations. Other uses can include linear algebra, fast Fourier transformation, and image processing filters, all without any need for the overhead of graphics APIs.

Recommended for You

Related Service Offerings

Cloud Cost Optimization Advisory

Save up to 30% of cloud spend by identifying areas of waste across hyperscalers

Application Modernization Advisory

A prescriptive and strategic roadmap to reduces risks on your journey into a modernized, containerized application environment

Cloud Security Assessment

Understand how secure your cloud environment is and the key vulnerabilities you need to address.