Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Средства оценки скорости выполнения / 15 сообщений из 15, страница 1 из 1
16.04.2006, 13:59
    #33669413
latex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Средства оценки скорости выполнения
Кто знает как это вообще делается?
как измерять время выполнения функции? Должны наверное существовать инструмменты более серьезные, чем time() после выполнения минус time() до выполнения?
...
Рейтинг: 0 / 0
16.04.2006, 16:11
    #33669525
suzum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Средства оценки скорости выполнения
Время выполнения в процессорных тактах ;)
Код: plaintext
1.
2.
3.
4.
5.
6.
#pragma warn - 8070 
__int64 Ticks()
{
   asm  586 
   asm RDTSC
}
#pragma warn + 8070 

Код: plaintext
1.
2.
3.
4.
5.
6.
__int64 start = Ticks();

call_your_func();

__int64 finish = Ticks();

__int64 delta = finish - start;
...
Рейтинг: 0 / 0
16.04.2006, 16:21
    #33669534
latex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Средства оценки скорости выполнения
а можна с коментарием?

что это за директивы?
что это за асмы?
это что Managed C++ чтоли? а то я в нем очень слаб
...
Рейтинг: 0 / 0
16.04.2006, 16:31
    #33669540
suzum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Средства оценки скорости выполнения
latex, зобей !
пешы как я скозал
и будет щастье.
зы какой нафег Managed C++
...
Рейтинг: 0 / 0
16.04.2006, 16:46
    #33669549
latex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Средства оценки скорости выполнения
не-а я так не могу.
обьясни пожалуйста первую часть кода:

#pragma warn -8070
__int64 Ticks()
{
asm 586
asm RDTSC
}
#pragma warn +8070
...
Рейтинг: 0 / 0
16.04.2006, 16:51
    #33669552
suzum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Средства оценки скорости выполнения
эту умною вещ я прочетал
ф книшке «C For Dummies».
афтара не помню
каменты по англицки асилеть не смок.
...
Рейтинг: 0 / 0
16.04.2006, 16:55
    #33669557
latex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Средства оценки скорости выполнения
а линк на умную книжку можно ?
...
Рейтинг: 0 / 0
16.04.2006, 17:10
    #33669568
suzum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Средства оценки скорости выполнения
...
Рейтинг: 0 / 0
16.04.2006, 17:19
    #33669582
latex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Средства оценки скорости выполнения
ну че за лажа? Я ведь серьезно просил
ну так есть линк или нету?
...
Рейтинг: 0 / 0
16.04.2006, 17:23
    #33669586
suzum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Средства оценки скорости выполнения
извени. значет книшку уже убрале.
новерное пираццкая была :(
...
Рейтинг: 0 / 0
16.04.2006, 19:35
    #33669690
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Средства оценки скорости выполнения
latexКто знает как это вообще делается?


Профайлером.
...
Рейтинг: 0 / 0
16.04.2006, 19:45
    #33669701
latex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Средства оценки скорости выполнения
MasterZivПрофайлером.

О помоему это как раз то что я и хотел узнать.
что такое профайлер?
где его взять?
какие бывают?( мне все равно под вин||лин )
...
Рейтинг: 0 / 0
17.04.2006, 05:15
    #33669982
AndreiNz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Средства оценки скорости выполнения
Довольно сносный способ:

Код: plaintext
1.
2.
3.
int iCount = GetTickCount();
CallMyFunction();
TRACE("CallMyFunction takes %d ticks", GetTickCount() - iCount);
...
Рейтинг: 0 / 0
17.04.2006, 08:21
    #33670056
Cerebrum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Средства оценки скорости выполнения
latexне-а я так не могу.
обьясни пожалуйста первую часть кода:

#pragma warn -8070
__int64 Ticks()
{
asm 586
asm RDTSC
}
#pragma warn +8070

#pragma warn -8070 - отключает реакцию компилятора на warning в процессе компиляции, какое именно можно узнать по номеру в MSDN
далее идет функция, которая возвращает охренено большое число (64 бита), реализована с ассемблерными вставками (asm)
потом возвращается реакция на предупреждение № 8070
...
Рейтинг: 0 / 0
18.04.2006, 12:12
    #33673130
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Средства оценки скорости выполнения
что такое профайлер?

Это такая программа.

где его взять?

В поставке твоего компилятора. Работа с профайлером обычно требует специальной сборки (компилятор при этом генерирует специальный код).

какие бывают?

Разные.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Средства оценки скорости выполнения / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]