GPU Applications

Machine Learning

Data scientists in both industry and academia have been using GPUs for machine learning to make groundbreaking improvements across a variety of applications including image classification, video analytics, speech recognition and natural language processing. In particular, Deep Learning – the use of sophisticated, multi-level "deep" neural networks to create systems that can perform feature detection from massive amounts of unlabeled training data – is an area that has been seeing significant investment and research.

Although machine learning has been around for decades, two relatively recent trends have sparked widespread use of machine learning: the availability of massive amounts of training data, and powerful and efficient parallel computing provided by GPU computing. GPUs are used to train these deep neural networks using far larger training sets, in an order of magnitude less time, using far less datacenter infrastructure. GPUs are also being used to run these trained machine learning models to do classification and prediction in the cloud, supporting far more data volume and throughput with less power and infrastructure.

Early adopters of GPU accelerators for machine learning include many of the largest web and social media companies, along with top tier research institutions in data science and machine learning. With thousands of computational cores and 10-100x application throughput compared to CPUs alone, GPUs have become the processor of choice for processing big data for data scientists.

With GPUs, pre-recorded speech or multimedia content can be transcribed much more quickly. Compared to CPU implementation we are able to perform recognition up to 33x faster.


- Professor Ian Lane, Carnegie Mellon University


Learn how other data scientists are advancing their work in the field of machine learning, and get information about tools, software frameworks, and computing configurations that will help you get started.

Machine Learning Tools
  • Caffe: Framework for convolutional neural network algorithms
  • cuda-convnet: High performance C++/CUDA implementation of convolutional neural networks
  • Theano: Python library to define, optimize, and evaluate mathematical expressions
  • Torch7: Scientific computing framework for machine learning algorithms 
  • cuBLAS: GPU-accelerated version of the complete standard BLAS library
  • MATLAB: Easy-to-use HPC language integrating computation, visualization, and programming
  • cxxnet: Neural network toolkit
Technical Talks on Machine Learning
Technical Papers on Machine Learning
Companies using GPUs for Machine Learning
Adobe Baidu Facebook Flickr
IBM Microsoft Netflix Nuance
Recommended System Configurations
Development Workstation Training Cluster

2x NVIDIA Tesla K40 GPU Accelerator

2x Intel Xeon CPU (8 core or higher)

64 GB System Memory

8x NVIDIA Tesla K40 GPU Accelerator

2x Intel Xeon CPU (8 core or higher)

256 GB System Memory


Configuration Options

Configuration Options


For information on how to purchase GPU accelerators, visit the Where to Buy Tesla page

CUDA and GPU Computing

What is GPU Computing?
GPU Computing Facts
GPU Programming
Kepler GPU Architecture
GPU Cloud Computing
Contact Us

What is CUDA?
CUDA in Action
CUDA Showcase
CUDA Training
CUDA Training Calendar
CUDA Centres of Excellence
CUDA Research Centres
CUDA Teaching Centres

GPU Applications

Tesla GPU Applications
Tesla Case Studies
Tesla GPU Test Drive
OpenACC Directives
GeoInt Accelerator Program
Tesla News and Reviews

Tesla GPUs for
Servers for Workstations

Why Choose Tesla
Tesla Server Solutions
Tesla Workstation Solutions
Embedded Development Platform
Buy Tesla GPUs

Tesla News and Information

Tesla Product Literature
Tesla Software Features
Tesla Software Development Tools
Tesla News and Reviews
NVIDIA Research
Tesla Alerts

Find Us Online

Facebook Facebook
Twitter Twitter
YouTube YouTube