процессорное время, необходимое на выполнение операций
От: Аноним  
Дата: 10.02.11 01:16
Оценка:
есть приложение, в нём 2 алгоритма, необходимо померять время выполнения каждого из них. Можно посмотреть Environment.TickCount до и после каждого из алгоритмов и сравнить. Но есть одно НО — на компе выполняются ещё какие-нибудь системные процессы и прочее, что влияет на время выполнения этих алгоритмов. Есть ли какая-то другая возможность посчитать, скажем посчитать кол-во регистровых операций и т.д.?
Re: процессорное время, необходимое на выполнение операций
От: Pavel Dvorkin Россия  
Дата: 10.02.11 06:57
Оценка: +1
Здравствуйте, Аноним, Вы писали:

А>есть приложение, в нём 2 алгоритма, необходимо померять время выполнения каждого из них. Можно посмотреть Environment.TickCount до и после каждого из алгоритмов и сравнить. Но есть одно НО — на компе выполняются ещё какие-нибудь системные процессы и прочее, что влияет на время выполнения этих алгоритмов. Есть ли какая-то другая возможность посчитать, скажем посчитать кол-во регистровых операций и т.д.?


В Win32 есть функция GetProcessTimes

http://msdn.microsoft.com/en-us/library/ms683223(v=vs.85).aspx

Она вернет тебе время, затраченное процессом в юзермоде и кернелмоде. Разница двух замеров даст то, что ты хочешь.

Вот здесь

http://www.pinvoke.net/default.aspx/kernel32.getprocesstimes

показано, как ее вызвать в дотнете
With best regards
Pavel Dvorkin
Re: процессорное время, необходимое на выполнение операций
От: Аноним  
Дата: 10.02.11 08:18
Оценка:
http://selo-blog.blogspot.com/2010/10/perfomance-counter.html
Re: процессорное время, необходимое на выполнение операций
От: Sinix  
Дата: 10.02.11 09:57
Оценка: +1
Здравствуйте, Аноним, Вы писали:

А>есть приложение, в нём 2 алгоритма, необходимо померять время выполнения каждого из них. Можно посмотреть Environment.TickCount до и после каждого из алгоритмов и сравнить.

Тогда достаточно Stopwatch и сбора статистики по нескольким прогонам. Если различия укладываются в погрешности измерения — зачем мучаться?.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.