Понимание резульататов выданных профайлером (VS2005)
От: LowCoder  
Дата: 22.12.10 10:36
Оценка:
Посоветуйте плиз вот какой вопрос — занимался надысь профилированием некой тестовой проги (VC++ 2005) и в частости там в main есть вызов двух функций

func1() и func2()

Получил вот такие результаты (цифры в миллисекундах)

func1()
Elapsed exclusive time (Time spent in this function) 0,43
Application exclusive time (Time spent in this function but not in the kernel) 0,43
Elapsed inclusive time (Time spent in this function and its children) 54,3
Application inclusive time (Time spent in this function and its children but not in the kernel) 54,3

func2()
Elapsed exclusive time (Time spent in this function) 0,14
Application exclusive time (Time spent in this function but not in the kernel) 0,14
Elapsed inclusive time (Time spent in this function and its children) 136,7
Application inclusive time (Time spent in this function and its children but not in the kernel) 136,7

Т. е. — правильно ли я считаю что использование func1 выгоднее (скорость приоритет) и именно показатель Elapsed inclusive time показывает время затраченное функцией в проге — т.е время котороые было потрачено на функцию и на все что втутри?
Re: Понимание резульататов выданных профайлером (VS2005)
От: npak Россия  
Дата: 22.12.10 13:48
Оценка:
Здравствуйте, LowCoder, Вы писали:

LC>Посоветуйте плиз вот какой вопрос — занимался надысь профилированием некой тестовой проги (VC++ 2005) и в частости там в main есть вызов двух функций


LC>func1() и func2()


LC>Получил вот такие результаты (цифры в миллисекундах)


LC>func1()

LC>Elapsed exclusive time (Time spent in this function) 0,43
LC>Application exclusive time (Time spent in this function but not in the kernel) 0,43
LC>Elapsed inclusive time (Time spent in this function and its children) 54,3
LC>Application inclusive time (Time spent in this function and its children but not in the kernel) 54,3

LC>func2()

LC>Elapsed exclusive time (Time spent in this function) 0,14
LC>Application exclusive time (Time spent in this function but not in the kernel) 0,14
LC>Elapsed inclusive time (Time spent in this function and its children) 136,7
LC>Application inclusive time (Time spent in this function and its children but not in the kernel) 136,7

LC>Т. е. — правильно ли я считаю что использование func1 выгоднее (скорость приоритет) и именно показатель Elapsed inclusive time показывает время затраченное функцией в проге — т.е время котороые было потрачено на функцию и на все что втутри?


Увловно говоря, exclusive_time — это время, затраченное на выполнение кода тела функции, а inclusive_time — это exclusive_time плюс время выполнения функций, которые вызывались из данной.

Видно, что func1 дольше работает сама, и меньше "отдает на сторону". func2 наоборот, сама почти не работает, занимается только вызовами других функций.

Если func1 и func2 получают один и тот же результат, то func1 в среднем делает работу в два с лишним раза быстрее, чем func2. Поэтому при прочих равных условиях func1 предпочтительней.
Re[2]: Понимание резульататов выданных профайлером (VS2005)
От: LowCoder  
Дата: 22.12.10 13:52
Оценка:
Спасибо
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.