coder.MklDNNConfig - Parameters to configure deep learning code generation with the Intel Math Kernel Library for Deep Neural Networks - MATLAB (original) (raw)
Main Content
Parameters to configure deep learning code generation with the Intel Math Kernel Library for Deep Neural Networks
Description
The coder.MklDNNConfig
object contains the Intel® MKL-DNN specific parameters that codegen uses for generating C++ code for deep neural networks.
To use a coder.MklDNNConfig
object for code generation, assign it to the DeepLearningConfig
property of a code generation configuration object that you pass to codegen
.
Creation
Create an MKL-DNN configuration object by using the coder.DeepLearningConfig function with target library set as'mkldnn'
.
Properties
TargetLib
— Target library name
'mkldnn'
Name of target library, specified as a character vector.
Examples
Generate Code for the ResNet-50 Network Using Intel MKL-DNN Library
Create an entry-point function resnet_predict
that uses thecoder.loadDeepLearningNetwork
function to load thedlnetwork
object that contains the ResNet-50
network. For more information, see Code Generation for dlarray.
function out = resnet_predict(in)
dlIn = dlarray(in, 'SSCB'); persistent dlnet; if isempty(dlnet) dlnet = imagePretrainedNetwork('resnet50'); end
dlOut = predict(dlnet, dlIn); out = extractdata(dlOut);
Create a coder.config
configuration object for MEX code generation.
cfg = coder.config('mex');
Set the target language to C++.
Create a coder.MklDNNConfig
deep learning configuration object. Assign it to the DeepLearningConfig
property of thecfg
configuration object.
cfg.DeepLearningConfig = coder.DeepLearningConfig('mkldnn');
Use the -config
option of the codegen function to pass the cfg
configuration object. The codegen function must determine the size, class, and complexity of MATLAB® function inputs. Use the -args
option to specify the size of the input to the entry-point function.
codegen -args {ones(224,224,3,'single')} -config cfg resnet_predict
The codegen
command places all the generated files in thecodegen
folder. The folder contains the C++ code for the entry-point function resnet_predict.cpp
, header, and source files containing the C++ class definitions for the neural network, weight, and bias files.
Version History
Introduced in R2018b