Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.21;
Скачать: CL | DM;

Вниз

Измерение быстродейсвия кода   Найти похожие ветки 

 
Mirovodin ©   (2002-09-23 15:58) [0]

Кто какие способы знает? Собсвенно необходима максимальная точность. В принципе есть неплохая функция GetTickCount:

T1:=GetTickCount;
...
Анализируемый код
...
T2:=GetTickCount;


Время выполнения T2-T2 в мс, но может кто еще что посоветует? может можно такты процессора получать ?


 
Anatoly Podgoretsky ©   (2002-09-23 16:03) [1]

Ассемблерная команда RDTSC - точность один тик процессора


 
RV ©   (2002-09-23 16:05) [2]

не знаю то, или не то
вот когда-то нарыл, не проверял

function GetCPUSpeed: Double;
const

DelayTime = 500;
var

TimerHi : DWORD;
TimerLo : DWORD;
PriorityClass : Integer;
Priority : Integer;
begin

PriorityClass := GetPriorityClass(GetCurrentProcess);
Priority := GetThreadPriority(GetCurrentThread);
SetPriorityClass(GetCurrentProcess, REALTIME_PRIORITY_CLASS);
SetThreadPriority(GetCurrentThread, THREAD_PRIORITY_TIME_CRITICAL);


Sleep(100);


asm
DW 310Fh // rdtsc
MOV TimerLo, EAX
MOV TimerHi, EDX
end;


Sleep(DelayTime);


asm
DW 310Fh // rdtsc
SUB EAX, TimerLo
SBB EDX, TimerHi
MOV TimerLo, EAX
MOV TimerHi, EDX
end;


SetThreadPriority(GetCurrentThread, Priority);
SetPriorityClass(GetCurrentProcess, PriorityClass);


Result := TimerLo / (1000.0 * DelayTime);
end;


// Usage ...

LabelCPUSpeed.Caption := Format("CPU speed: %f MHz", [GetCPUSpeed]);


 
MBo ©   (2002-09-23 16:05) [3]

>может можно такты процессора получать ?
Да, можно QueryPerfomanceCounter или RDTSC (0x0F, 0x31, если не ошибаюсь)
Причем можно для повышения точности учитывать время на вызов (однократный Старт-Стоп)



 
Mirovodin ©   (2002-09-23 16:23) [4]

Спасибо, нашел рабочий пример:
http://www.delphikingdom.com/treasury/rdtsc.htm




Страницы: 1 вся ветка

Текущий архив: 2002.11.21;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
3-69139
Gaber
2002-10-30 16:53
2002.11.21
Запрос SQL на изменение значения поля


14-69523
SPeller
2002-11-02 18:49
2002.11.21
Как приятно на своей машине смотреть фильмы :-)


1-69281
Nikolai_S
2002-11-12 10:02
2002.11.21
Из Дельфи 6 в Дельфи 5


8-69447
QueenOfRain
2002-04-27 10:36
2002.11.21
Объясните, плиз


3-69111
Назаров Евгений
2002-11-03 18:30
2002.11.21
подключение к удалённому серверу IB