Иллюстрированный самоучитель по Matlab



             

Профилирование m-файлов


Вообще говоря, достижение работоспособности программы — лишь один из этапов ее отладки. Не менее важным вопросом является

оптимизация

программы по минимуму времени исполнения или по минимуму объема кодов. Современные

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

Оценка времени исполнения отдельных частей программы называется ее

профилированием.

Для выполнения такой процедуры служит команда profile [

Средства профилирования MATLAB позволяют анализировать только m-файлы функций, но не сценариев. Чтобы получить профиль выполнения сценария, приходится преобразовывать его в функции (как правило, не имеющую входных и выходных параметров), добавляя соответствующий заголовок function.

], имеющая ряд опций:

profile fun — запуск профилирования для функции fun; 

profile report — вывод отчета о профилировании;

profile plot — графическое представление результатов профилирования в виде диаграммы Парето;

profile filename — профилирование файла с заданным именем и путем; 

prof ile report N — вывод отчета по профилированию заданных N строк;

profile report frac — выводит отчет по профилированию тех строк, относительная доля выполнения которых в общем времени выполнения составляет не менее чем frac (от 0.0 до 1.0);

profileon — включение профилирования; 

profile off — выключение профилирования;

profile reset — выключение профилирования с уничтожением всех накопленных данных; 

INFO = profile — возвращает структуру со следующими полями:

file — полный путь к профилируемому файлу;

interval — интервалы времени в секундах;

count — вектор измерений;

state — состояние профилировщика: 'on' (включен) или 'off (выключен).

Ниже приводится пример на профилирование m-файла ellipj (эллиптическая функция Якоби):

» profile on 




Содержание  Назад  Вперед