Deep Learning Frameworks

The NVIDIA Deep Learning SDK accelerates widely-used deep learning frameworks such as Caffe, CNTK, TensorFlow, Theano and Torch as well as many other deep learning applications. Choose a deep learning framework from the list below and follow the instructions on the framework page to install and get started.

For access to NVIDIA optimized deep learning framework containers, visit the NVIDIA GPU CLOUD. Developers can get started with accelerated releases of popular frameworks including NVCaffe, Caffe2, Microsoft Cognitive Toolkit (CNTK), Digits, MXNet, PyTorch, TensorFlow, Theano, and Torch, for use on-premises or on AWS P3 instances. Sign up for an NGC account to get started.


Caffe is a deep learning framework made with expression, speed, and modularity in mind. Caffe is developed by the Berkeley Vision and Learning Center (BVLC), as well as community contributors and is popular for computer vision.

Caffe supports cuDNN v5 for GPU acceleration.

Supported interfaces: C, C++, Python, MATLAB, Command line interface

Learning Resources
Download Caffe

Caffe2 is a deep learning framework enabling simple and flexible deep learning. Built on the original Caffe, Caffe2 is designed with expression, speed, and modularity in mind, allowing for a more flexible way to organize computation.

Caffe2 supports cuDNN v5.1 for GPU acceleration.

Supported interfaces: C++, Python

Learning Resources
Download Caffe2

The Microsoft Cognitive Toolkit —previously known as CNTK— is a unified deep-learning toolkit from Microsoft Research that makes it easy to train and combine popular model types across multiple GPUs and servers. Microsoft Cognitive Toolkit implements highly efficient CNN and RNN training for speech, image and text data.

Microsoft Cognitive Toolkit supports cuDNN v5.1 for GPU acceleration.

Supported interfaces: Python, C++, C# and Command line interface

Download CNTK

TensorFlow is a software library for numerical computation using data flow graphs, developed by Google’s Machine Intelligence research organization.

TensorFlow supports cuDNN v5.1 for GPU acceleration.

Supported interfaces: C++, Python

Download TensorFlow

Theano is a math expression compiler that efficiently defines, optimizes, and evaluates mathematical expressions involving multi-dimensional arrays.

Theano supports cuDNN v5 for GPU acceleration.

Supported interfaces: Python

Learning resources

Download Theano

Torch is a scientific computing framework that offers wide support for machine learning algorithms.

Torch supports cuDNN v5 for GPU acceleration.

Supported interfaces: C, C++, Lua

Learning resources

Download Torch

MXnet is a deep learning framework designed for both efficiency and flexibility that allows you to mix the flavors of symbolic programming and imperative programming to maximize efficiency and productivity.

MXnet supports cuDNN v5 for GPU acceleration.

Supported Interfaces: Python, R, C++, Julia

Download MXnet

Chainer is a deep learning framework that’s designed on the principle of define-by-run. Unlike frameworks that use the define-and-run approach, Chainer lets you modify networks during runtime, allowing you to use arbitrary control flow statements.

Chainer supports cuDNN v5.1 for GPU acceleration.

Supported Interfaces: Python

Download Chainer

Keras is a minimalist, highly modular neural networks library, written in Python, and capable of running on top of either TensorFlow or Theano. Keras was developed with a focus on enabling fast experimentation.

cuDNN version depends on the version of TensorFlow and Theano installed with Keras.

Supported Interfaces: Python

Download Keras

More frameworks

There are several other deep learning frameworks that leverage the Deep Learning SDK, including Deeplearning4j, Kaldi, Lasagne(Theano), Leaf, MatConvNet, SoooA , and more.

If you’re a framework developer and would like to see your framework listed here, please get in touch with us at deeplearning@nvidia.com