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

Создание итогового отчета

Для создания суммарного отчета о профилировании служит команда profsum, которая используется в нескольких формах:

  • profsumm – вывод полного отчета о результатах профилирования т-файла. Выводятся данные о времени выполнения для строк, суммарное время выполнения которых составляет 95% от общего времени (если таких строк много, выводятся данные о 10 строках, выполнение которых заняло наибольшее время);
  • profsumm(FRACTION) – выводит часть отчета для строк, относительное время выполнения которых составляет FRACTION (от 0.0 до 1.0) от общего времени выполнения файла;
  • profsumm(N) – выводится отчет по N строкам с максимальным временем выполнения;
  • profsumm(STR) – выводит отчет только по тем строкам, в которых встречается строковое выражение STR;
  • profsumm(INFO), profsumm(INFO, FRACTION), profsumm(INFO, N), Hprofsumm(INFO, STR) – выводят итоговый отчет по строкам, заданным массивом INFO.

Пример применения команды profsumm:

>> profile erfcore
>> z = erf(0:.01:100):
>> profsumm .profile done
Total time in "C:\MATLAB\toolbox\matlab\specfun\erfcore.m": 0.16 seconds
94% of the total time was spent on lines:
[99 109 108 97 95 94 92 86 71 48]
47: %
0.01s. 6*48: k = find((abs(x)
> xbreak) & (abs(x) <= 4.)):
49: if - isempty(k)
70: del = (y-z).*(y+z):
0.01s, 6*71: result(k)
= exp(-z.*z).* exp(-del).* result(k)
72: end
85: 0.01s. 6% 86: y = abs(x(k)):
87: z = 1./ (y.* y):
91: xnum = (xnum + p(i)).* z:
0.01s, 6*92: xden = (xden + q(i)).* z:
93: end
0.01s, 6*94: result(k) =
z.* (xnum + p(5))./ (xden + q(5)):
0.01s, 6*95: result(k)
= (1/sqrt(pi) - result(k))./y:
96: if jint - 2 0.01s, 6% 97;
z = fix(y*16)/16;
98: del - (y-z).*(y+z):
0.06s. 38*99: result(k) =
exp(-z.*z).* exp(-del).* result(k)
100: k - find(~isfinite(result));
107: if jint ==0
0.01s, 6% 108: k = find(x > xbreak);
0.01s, 6% 109: result(k)=
(0.5 - result(k)) + 0.5;
110: k = find(x < - xbreak);
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.