MATLAB® enables you to use NVIDIA® GPUs to accelerate AI, deep learning, and other computationally intensive analytics without having to be a CUDA® programmer. Using MATLAB and Parallel Computing Toolbox™, you can:
Use NVIDIA GPUs directly from MATLAB with over 500 built-in functions.
Access multiple GPUs on desktop, compute clusters, and the cloud using MATLAB workers and MATLAB Parallel Server™.
Generate CUDA code directly from MATLAB for deployment to data centers, clouds, and embedded devices using GPU Coder™.
Generate NVIDIA TensorRT™ code from MATLAB for low latency and high-throughput inference with GPU Coder.
Deploy MATLAB AI applications to NVIDIA-enabled data centers to integrate with enterprise systems using MATLAB Production Server™.
MATLAB allows a single user to implement an end-to-end workflow to develop and train deep learning models using Deep Learning Toolbox™. You can then scale training using cloud and cluster resources using Parallel Computing Toolbox and MATLAB Parallel Server, and deploy to data centers or embedded devices using GPU Coder.
Develop Deep Learning and Other Computationally Intensive Analytics with GPUs
MATLAB is an end-to-end workflow platform for AI and deep learning development. MATLAB provides tools and apps for importing training datasets, visualization and debugging, scaling training CNNs, and deployment.
Scale up to additional compute and GPU resources on desktop, clouds, and clusters with a single line of code.
Scale MATLAB on GPUs With Minimal Code Changes
Run MATLAB code on NVIDIA GPUs using over 500 CUDA-enabled MATLAB functions. Use GPU-enabled functions in toolboxes for applications such as deep learning, machine learning, computer vision, and signal processing. Parallel Computing Toolbox provides
gpuArray, a special array type with associated functions, which lets you perform computations on CUDA-enabled NVIDIA GPUs directly from MATLAB without having to learn low-level GPU computing libraries.
Engineers can use GPU resources without having to write any additional code, so they can focus on their applications rather than performance tuning.
Using parallel language constructs such as
spmd you can perform calculations on multiple GPUs. Training a model on multiple GPUs is a simple matter of changing a training option.
MATLAB also lets you integrate your existing CUDA kernels into MATLAB applications without requiring any additional C programming.