Вниз
Скачать: CL | DM;

RDTSC   Найти похожие ветки 

 
DDA ©   (2004-03-01 22:25) [0]

Я хотел спросить относительно тактов процессора.

Одинаковое кол-во тактов(приблизительно) бедет тратить процессор
на выполнение одной и тойже процедуры на разных компах(процессорах)

Например:

function RDTSC: int64; assembler;
asm
db $0F,$31 //ReaD Time Stamp Counter
end;

procedure TForm1.Button1Click(Sender: TObject);
var timeperiod:int64;
i:integer;
begin
TimePeriod := RDTSC;
for i:=1 to 100 do
begin
end;
TimePeriod := RDTSC - TimePeriod;
ShowMessage(inttostr(TimePeriod));
end;


 
DDA ©   (2004-03-01 22:26) [1]

У меня 396-404 тактов

2000 Мг


 
Anatoly Podgoretsky ©   (2004-03-01 22:37) [2]

Нет разное, но если повезет, то одинаковое количество тактов, это если одинаковая модель процессора и одинаковая частота и то не всегда. Погрешность уменьшается статистическими методами. Все же виндоус не система эесткого реального времени.


 
DDA ©   (2004-03-01 22:40) [3]

Значит мне не удастся проверять сколько времени выполнялась процедура так как у всех разнае компы


 
Anatoly Podgoretsky ©   (2004-03-01 22:59) [4]

Наоборот это лучшее средство, но только оно меряет не время, а количество тактов процессора, но не проблема перевести, если откалибровать при инициализации.


 
DDA ©   (2004-03-01 23:16) [5]

Хорошо ,спасибо.Будем тренироваться



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.018 c
14-43880
Добрыня
2004-02-19 18:09
2004.03.14
лицензирование


1-43514
satron
2004-02-28 20:56
2004.03.14
Как


1-43634
Аноним
2004-03-02 13:37
2004.03.14
Файл в памяти


1-43599
Zelius
2004-03-02 13:33
2004.03.14
Вопрос по TActionManager


1-43663
Nekto
2004-03-01 21:58
2004.03.14
TComboBox




   Наверх