estimatePerformance

Класс: dlhdl.ProcessorConfig
Пакет: dlhdl

Получите задержки уровня слоя и эффективность при помощи estimatePerformance метод

Описание

пример

estimatePerformance(network) возвращает задержки уровня слоя и производительность сети для объекта, заданного network аргумент.

performance = estimatePerformance(network) возвращает таблицу, содержащую network объектные задержки уровня слоя и эффективность.

performance = estimatePerformance(network,Name,Value) возвращает таблицу, содержащую network объектные задержки уровня слоя и эффективность, с одним или несколькими аргументами, заданными дополнительными аргументами пары "имя-значение".

Входные параметры

развернуть все

Имя сетевого объекта для оценки эффективности.

Пример: estimatePerformance(snet)

Аргументы name-value

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Количество кадров, чтобы рассмотреть для вычисления оценки эффективности в виде целого числа положительного числа.

Пример: 'FrameCount',10

Выходные аргументы

развернуть все

Эффективность сетевого объекта для ProcessorConfig объект, возвращенный как таблица.

Примеры

развернуть все

  1. Создайте файл в своей текущей рабочей папке под названием getLogoNetwork.m. В файле, введите:

    function net = getLogoNetwork
     if ~isfile('LogoNet.mat')
            url = 'https://www.mathworks.com/supportfiles/gpucoder/cnn_models/logo_detection/LogoNet.mat';
            websave('LogoNet.mat',url);
        end
        data = load('LogoNet.mat');
        net  = data.convnet;
    end
  2. Создайте dlhdl.ProcessorConfig объект.

    snet = getLogoNetwork;
    hPC = dlhdl.ProcessorConfig;
  3. Чтобы получить задержки уровня слоя и эффективность для сети LogoNet, вызовите estimatePerformance метод.

    hPC.estimatePerformance(snet)
    ### Notice: The layer 'imageinput' with type 'nnet.cnn.layer.ImageInputLayer' is implemented in software.
    ### Notice: The layer 'classoutput' with type 'nnet.cnn.layer.ClassificationOutputLayer' is implemented in software.
    
    
                  Deep Learning Processor Estimator Performance Results
    
                       LastFrameLatency(cycles)   LastFrameLatency(seconds)       FramesNum      Total Latency     Frames/s
                             -------------             -------------              ---------        ---------       ---------
    Network                   39426458                  0.19713                       1           39426458              5.1
        ____conv_1             6822215                  0.03411 
        ____maxpool_1          3755088                  0.01878 
        ____conv_2            10440701                  0.05220 
        ____maxpool_2          1447840                  0.00724 
        ____conv_3             9362677                  0.04681 
        ____maxpool_3          1765856                  0.00883 
        ____conv_4             1377268                  0.00689 
        ____maxpool_4            28098                  0.00014 
        ____fc_1               2644886                  0.01322 
        ____fc_2               1692534                  0.00846 
        ____fc_3                 89295                  0.00045 
     * The clock frequency of the DL processor is: 200MHz

Оцените эффективность сети ResNet-18 для нескольких систем координат при помощи dlhdl.ProcessorConfig объект.

Загрузите сеть ResNet-18 и сохраните ее в net

net = resnet18;

Создайте dlhdl.ProcessorConfig возразите и сохраните в hPC

hPC = dlhdl.ProcessorConfig;

Получите задержки уровня слоя и эффективность в кадрах в секунду (FPS) для нескольких систем координат при помощи estimatePerformance метод с FrameNumber как дополнительный входной параметр.

hPC.estimatePerformance(net,'FrameCount',10);
### Optimizing series network: Fused 'nnet.cnn.layer.BatchNormalizationLayer' into 'nnet.cnn.layer.Convolution2DLayer'
### Notice: The layer 'data' with type 'nnet.cnn.layer.ImageInputLayer' is implemented in software.
### Notice: The layer 'ClassificationLayer_predictions' with type 'nnet.cnn.layer.ClassificationOutputLayer' is implemented in software.


              Deep Learning Processor Estimator Performance Results

                   LastFrameLatency(cycles)   LastFrameLatency(seconds)       FramesNum      Total Latency     Frames/s
                         -------------             -------------              ---------        ---------       ---------
Network                   21219873                  0.10610                      10          210125220              9.5
    ____conv1              2165372                  0.01083 
    ____pool1               646226                  0.00323 
    ____res2a_branch2a      966221                  0.00483 
    ____res2a_branch2b      966221                  0.00483 
    ____res2a               210750                  0.00105 
    ____res2b_branch2a      966221                  0.00483 
    ____res2b_branch2b      966221                  0.00483 
    ____res2b               210750                  0.00105 
    ____res3a_branch1       540749                  0.00270 
    ____res3a_branch2a      708564                  0.00354 
    ____res3a_branch2b      919117                  0.00460 
    ____res3a               105404                  0.00053 
    ____res3b_branch2a      919117                  0.00460 
    ____res3b_branch2b      919117                  0.00460 
    ____res3b               105404                  0.00053 
    ____res4a_branch1       509261                  0.00255 
    ____res4a_branch2a      509261                  0.00255 
    ____res4a_branch2b      905421                  0.00453 
    ____res4a                52724                  0.00026 
    ____res4b_branch2a      905421                  0.00453 
    ____res4b_branch2b      905421                  0.00453 
    ____res4b                52724                  0.00026 
    ____res5a_branch1       751693                  0.00376 
    ____res5a_branch2a      751693                  0.00376 
    ____res5a_branch2b     1415373                  0.00708 
    ____res5a                26368                  0.00013 
    ____res5b_branch2a     1415373                  0.00708 
    ____res5b_branch2b     1415373                  0.00708 
    ____res5b                26368                  0.00013 
    ____pool5                54594                  0.00027 
    ____fc1000              207351                  0.00104 
 * The clock frequency of the DL processor is: 200MHz

Советы

Получить оценку эффективности для dlquantizer объект, набор dlhdl.ProcessorConfig объект ProcessorDataType к int8.

Введенный в R2021a