Текущий архив: 2003.04.03;
Скачать: CL | DM;
Вниз2 вопроса Найти похожие ветки
← →
kpo (2003-02-09 12:22) [0]как узнать быстродействие ПК (Скорось CPU)и объем оперативной памяти .желательно исходник
← →
SniZ (2003-02-09 21:57) [1]function GetCPUSpeed: Double;
const
DelayTime = 500; // measure time in ms
var
TimerHi, TimerLo: DWORD;
PriorityClass, Priority: Integer;
begin
PriorityClass := GetPriorityClass(GetCurrentProcess);
Priority := GetThreadPriority(GetCurrentThread);
SetPriorityClass(GetCurrentProcess, REALTIME_PRIORITY_CLASS);
SetThreadPriority(GetCurrentThread, THREAD_PRIORITY_TIME_CRITICAL);
Sleep(10);
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;
и в каком нибудь абрободчике пишеш
допустим в лабеле1
Label1.Caption := Format("CPU speed: %f MHz", [GetCPUSpeed]);
← →
Спрашивающий (2003-02-10 07:30) [2]Функция не универсальна дает сбой на некоторых моделях процессоров. Я сталкивался когда на ноутбуке она занижает частоту в 10 раз.
Страницы: 1 вся ветка
Текущий архив: 2003.04.03;
Скачать: CL | DM;
Память: 0.44 MB
Время: 0.008 c