2013-05-09 4 views
1

Я проверяю время работы функции с помощью tic/toc. Я пишу следующее в окне командной строки (и выполнить его одновременно):Странные результаты tic/toc в MATLAB

tic 
res = checkFunc('case2736sp',1:3000); 
toc 
Elapsed time is 0.080491 seconds. 

где checkFunc возвращает 2736x2500 полную матрицу.

Что меня задевает, так это то, что я должен подождать почти 20 секунд для вывода, говорящего, что время работы составляет всего 80 мс.

У кого-нибудь есть ключ, почему это так?

+2

Возможно, checkFunc называет 'tic' внутренне? – Dan

ответ

4

Возможно, что внутренний счетчик tic/toc будет как-то сброшен во время выполнения. Попробуйте следующее:

t = tic 
res = checkFunc('case2736sp',1:3000); 
toc(t) 
+0

Конечно, не думал об этом =) Спасибо! –