How to measure the execution time for ReLu, Maxpool, fullyconnect in deep neural network?

1 Ansicht (letzte 30 Tage)
I need to measure time taken to execute individual layer in a CNN model such as AlexNet. The total time for execution was determined by tic and toc functions.

Antworten (1)

Muskan
Muskan am 15 Mai 2023
Hi Isuru,
As per my understanding in MATLAB, you can measure the execution time for ReLU, Maxpool, and fully connected layers in a deep neural network using the built-in profiler tools. Here are the steps you can follow:
  1. Enable the Profiler: First, you need to enable the profiler tools in MATLAB. To do this, type profile on in the MATLAB command window.
  2. Create the Neural Network: Create your deep neural network using MATLAB's Deep Learning Toolbox.
  3. Collect Performance Data: Next, run your neural network with the sim function and collect performance data using the profile() function. You can also use the tic and toc functions to measure the execution time of specific code segments.
Example:
inputData = rand(28*28, 100);
reluLayer = reluLayer();
tic;
outputData = reluLayer.forward(inputData);
toc;
You can refer to the following documentation for better understanding:
Thanks
  2 Kommentare
ISURU SAMARAKOON
ISURU SAMARAKOON am 15 Mai 2023
@Muskan, Thank you very much for your support. However I have observed that there is a difference in time from tic toc function and profiler. So which method is more accurate?
Matt J
Matt J am 15 Mai 2023
Bearbeitet: Matt J am 15 Mai 2023
This doesn't seem to work,
inputData = rand(28*28, 100);
reluLayer = reluLayer();
tic;
outputData = reluLayer.forward(inputData);
Unrecognized method, property, or field 'forward' for class 'nnet.cnn.layer.ReLULayer'.
toc;

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Deep Learning Toolbox finden Sie in Help Center und File Exchange

Produkte


Version

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by