MATLAB® is a high-level language and interactive environment for numerical computation, visualization, and programming. Using MATLAB, you can analyze data, develop algorithms, and create models in a variety of application areas such as image and video processing, signal processing and communications, computational finance, machine learning, and computational biology.

MATLAB supports CUDA kernel development by providing a language and development environment for prototyping algorithms and incrementally developing and testing CUDA kernels.

Technical article: GPU Programming with MATLAB

MATLAB can be used to:

  • Write prototype code to explore algorithms before implementing them in CUDA
  • Quickly evaluate CUDA kernels for different input data
  • Analyze and visualize kernel results
  • Write test harnesses to validate that kernels are working correctly

MATLAB reduces the amount of wrapper code required for evaluating and testing CUDA kernels compared with lower level languages such as C or Fortran.

Learn more about GPU Computing with MATLAB

Try GPU accelerated MATLAB yourself: MATLAB GPU Hands-On Tutorial

When it’s not required to deliver your final application in C or Fortran, you can save time by developing your application directly in MATLAB and leveraging the built-in GPU-enabled functions in MATLAB and application specific toolboxes such as Image Processing Toolbox, Signal Processing Toolbox, and Communications System Toolbox.  Parallel Computing Toolbox is required to call GPU-enabled functions or integrate CUDA kernels in MATLAB.  You also need a CUDA-enabled NVIDIA GPU with compute capability 1.3 or later.