exponenta event banner

Создание отчета о показателях статического кода для кода, сгенерированного из кода MATLAB

Отчет о показателях статического кода содержит результаты статического анализа сгенерированного кода C/C + +, включая информацию о сгенерированном файле, количество строк и использование памяти. Дополнительные сведения см. в разделе Метрики статического кода. Для создания статического отчета по метрике кода необходимо использовать Embedded Coder ® для создания автономного кода C/C + + и отчета по генерации кода. См. раздел Отчеты по созданию кода.

По умолчанию анализ статических метрик кода не выполняется во время генерации кода. Вместо этого при необходимости выполнения анализа и просмотра результатов щелкните Метрики кода (Code Metrics) на вкладке Сводка (Summary) отчета о создании кода.

Пример отчета о показателях статического кода

В этом примере выполняется анализ метрик статического кода и рассматривается отчет метрик статического кода.

Создание функции-примера averaging_filter.

function y = averaging_filter(x) %#codegen
% Use a persistent variable 'buffer' that represents a sliding window of
% 16 samples at a time.
persistent buffer;
if isempty(buffer)
    buffer = zeros(16,1);
end
y = zeros(size(x), class(x));
for i = 1:numel(x)
    % Scroll the buffer
    buffer(2:end) = buffer(1:end-1);
    % Add a new sample value to the buffer
    buffer(1) = x(i);
    % Compute the current average value of the window and
    % write result
    y(i) = sum(buffer)/numel(buffer);
end

Создать образец данных.

v = 0:0.00614:2*pi;
x = sin(v) + 0.3*rand(1,numel(v));

Разрешить создание отчета о создании кода с помощью объекта конфигурации для создания автономного кода (статическая библиотека, динамически связанная библиотека или исполняемая программа).

cfg = coder.config('lib', 'ecoder', true);
cfg.GenerateReport=true;

В качестве альтернативы используйте codegen -report вариант.

Создание кода с помощью codegen. Укажите тип входного аргумента, предоставив пример ввода с -args вариант. Укажите объект конфигурации с помощью -config вариант.

codegen averaging_filter -config cfg -args {x}

Чтобы открыть отчет о создании кода, щелкните Просмотр отчета.

Чтобы выполнить анализ статических метрик кода и просмотреть отчет о метриках кода, на вкладке Сводка отчета о создании кода щелкните Метрики кода.

Изучите отчет по метрикам кода.

  1. Чтобы просмотреть сгенерированные файлы и количество строк кода на файл, щелкните Информация о файле.

  2. Чтобы просмотреть глобальные переменные в созданном коде, перейдите в раздел Глобальные переменные.

    Чтобы перейти от отчета к исходному коду, щелкните имя глобальной переменной.

  3. Для просмотра дерева вызовов функции созданного кода в разделе Информация о функции щелкните Дерево вызовов.

    Для перехода от отчета к коду функции щелкните имя функции.

  4. Чтобы просмотреть функции в формате таблицы, щелкните Таблица (Table).

    Во втором столбце, Вызываемый, перечислены функции, которые вызывают функцию, указанную в первом столбце. Если эта функция вызывается несколькими функциями, перечисляются все функции. Если ни одна из функций не вызывает эту функцию, этот столбец пуст.

Требования к выполнению анализа показателей статического кода после создания кода

По умолчанию анализ статических метрик кода не выполняется во время генерации кода. Вместо этого можно выполнить анализ позже, щелкнув Метрики кода (Code Metrics) в отчете о создании кода. Выполнение анализа статических метрик кода после создания кода имеет следующие требования и ограничения:

  • Необходимо иметь встроенный кодер и использовать платформу, которая использовалась для создания кода. После выполнения статического анализа метрик кода можно открыть отчет метрик кода без встроенного кодера или открыть его на другой платформе.

  • Если отчет о создании кода доступен только для чтения перед выполнением анализа, каждый раз при нажатии кнопки Метрики кода выполняется анализ.

Выполнение статических метрик кода во время создания кода

Если требуется, чтобы генератор кода выполнял статический анализ метрик кода и создавал отчет метрик кода во время генерации кода:

  • В объекте конфигурации создания кода Embedded Coder установите GenerateCodeMetricsReport кому true.

  • В приложении MATLAB ® Coder™ на вкладке Отладка установите метрики статического кода в значениеYes.

Связанные темы