скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Получение количества тактов процессора с момента перезагрузки



Автор: Григорьев Павел

{ **** UBPFD *********** by delphibase.endimus.com ****
>> Получение количества тактов процессора с момента перезагрузки

Получение количества тактов процессора с момента перезагрузки.

Производится вызов команды RDTSC x86 процессора.
Имеются во всех процах начиная с Pentium/586.
Подходит для всех версий Дельфи, где есть тип Int64.
Для остальных можно переписать слегка -
результат перекладывать в две переменные Integer.

Я ее использую для определения кол-ва
процессорного времени на выполнение куска кода.

Зависимости: можно использовать на всех процах, начиная с Pentium
Автор:       Григорьев Павел, xli@rambler.ru, Щёлково-4
Copyright:   справочник по командам процессора Pentium
Дата:        17 декабря 2003 г.
***************************************************** }

function RDTSC: int64; assembler;
asm
  db $0F,$31 // RDTSC
end;

Пример использования:

var
  TimePeriod: int64;
  ...
begin
  ...
  TimePeriod := RDTSC;
  {кусок анализируемого кода}
  TimePeriod := RDTSC - TimePeriod;
  {полученное значение TimePeriod можно анализировать}
  ...
end;





Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook