Supported Networks, Layers, and Classes
GPU Coder™ supports code generation for series and directed acyclic graph (DAG) neural networks. This page provides a list of supported deep learning networks, layers and classes.
Note that the code generator represents characters in an 8-bit ASCII codeset that the locale setting determines. Therefore, the use of non-ASCII characters in class names, layer names, layer description, or network names might result in errors. For more information, see Encoding of Characters in Code Generation.
Supported Pretrained Networks
You can train a neural network on either a CPU, a GPU, or multiple GPUs by using the Deep Learning Toolbox™ or use one of the pretrained networks listed in the table and generate CUDA® code.
These pretrained networks, available in Deep Learning Toolbox, are supported for code generation. You can use imagePretrainedNetwork
(Deep Learning Toolbox) function to load these
pretrained neural networks as dlnetwork
(Deep Learning Toolbox) objects for code generation.
Note that code generation does not support setting the name-value argument
Weights
of imagePretrainedNetwork
function to
"none"
. For example, use this code to load a pretrained GoogLeNet
neural network.
net = imagePretrainedNetwork("googlenet")
imagePretrainedNetwork Model Name Argument | CUDA | TensorRT and cuDNN |
---|---|---|
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
|
Additionally, you can use these functions to create neural networks for code generation.
Network Name | CUDA | TensorRT and cuDNN |
---|---|---|
Caffe network See | ||
DeepLab v3+ network
|
Supported Layers
These layers are supported for code generation by GPU Coder for these target deep learning libraries.
Note
In the following tables, the information icon indicates that the network, layer, or class has limited code generation capabilities. You might see errors and unexpected behavior. For more information, see the Extended Capabilities section on the page for that network, layer, or class.
Input Layers
Layer Name | CUDA | TensorRT | cuDNN |
---|---|---|---|
| |||
| |||
|
Convolution and Fully Connected Layers
Layer Name | CUDA | TensorRT and cuDNN |
---|---|---|
| ||
| ||
| ||
| ||
|
Sequence Layers
Layer Name | CUDA | TensorRT and cuDNN |
---|---|---|
| ||
| ||
| ||
| ||
| ||
|
Activation Layers
Layer Name | CUDA | TensorRT and cuDNN |
---|---|---|
| ||
| ||
| ||
preluLayer (Deep Learning Toolbox) | ||
| ||
| ||
| ||
| ||
|
Utility Layers
Layer Name | CUDA | TensorRT and cuDNN |
---|---|---|
| ||
| ||
| ||
instanceNormalizationLayer (Deep Learning Toolbox)
| ||
| ||
| ||
| ||
| ||
|
Pooling and Unpooling Layers
Layer Name | CUDA | TensorRT and cuDNN |
---|---|---|
adaptiveAveragePooling2dLayer (Deep Learning Toolbox) | ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
|
Combination Layers
Layer Name | CUDA | TensorRT and cuDNN |
---|---|---|
| ||
| ||
|
Transformer Layers
Layer Name | CUDA | TensorRT and cuDNN |
---|---|---|
| ||
| ||
| ||
| ||
| ||
|
Object Detection Layers
Layer Name | CUDA | TensorRT and cuDNN |
---|---|---|
| ||
| ||
| ||
|
Output Layers
Layer Name | CUDA | TensorRT and cuDNN |
---|---|---|
| ||
| ||
| ||
| ||
|
Custom Keras Layers
Layer Name | CUDA | TensorRT and cuDNN |
---|---|---|
| ||
| ||
| ||
| ||
| ||
| ||
| ||
|
Custom ONNX Layers
Layer Name | CUDA | TensorRT and cuDNN |
---|---|---|
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
|
Custom Layers
Layer Name | CUDA | TensorRT and cuDNN |
---|---|---|
|
Supported Classes
These classes are supported for code generation by GPU Coder for these target deep learning libraries.
Name | CUDA | TensorRT and cuDNN |
---|---|---|
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
|
See Also
Functions
Objects
coder.gpuConfig
|coder.CodeConfig
|coder.EmbeddedCodeConfig
|coder.gpuEnvConfig
|coder.CuDNNConfig
|coder.TensorRTConfig
Related Topics
- Pretrained Deep Neural Networks (Deep Learning Toolbox)
- Get Started with Transfer Learning (Deep Learning Toolbox)
- Create Simple Deep Learning Neural Network for Classification (Deep Learning Toolbox)
- Load Pretrained Networks for Code Generation
- Code Generation for Deep Learning Networks by Using cuDNN
- Code Generation for Deep Learning Networks by Using TensorRT
- Code Generation for Deep Learning Networks Targeting ARM Mali GPUs