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

5 次查看(过去 30 天)
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.

回答(1 个)

Muskan
Muskan 2023-5-15
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 个评论
ISURU SAMARAKOON
ISURU SAMARAKOON 2023-5-15
@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 2023-5-15
编辑:Matt J 2023-5-15
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;

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Image Data Workflows 的更多信息

产品


版本

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by