bein voila une chtite function qui calcule la vitesse du cpu.
faites par exemple
label1:=inttostr(GetCpuSpeed);
voila bon coding a vous
ManChesTer
Source / Exemple :
function get_cpu_speed:dword;
{
voila un chtite functon pour prendre la vitesse
du cpu qui marche avec un pentium au minimum
bon coding a vous ...
ManChesTer (c)2002 freeware
}
var Speed : dword;
perform: int64;
begin
perform:=0;
SetpriorityClass(getcurrentprocess,REALTIME_PRIORITY_CLASS);
SetThreadPriority(getcurrentThread,THREAD_PRIORITY_TIME_CRITICAL);
asm
push eax
push edx
push ecx
push 1000
call sleep // appel de sleep(1000)
dw $310F // rdtsc (red internal cpu timer in cycle)
add eax,edx
mov speed,eax // stokez les cycles machine
push edx
xor eax,eax
push 1000
call sleep // appel de sleep(1000)
pop edx
dw $310F // relire le timer cpu rdsc
add eax,edx
sub eax,speed // garder 1000 millisecondes (1 seconde)
mov speed,eax // le stocké dans speed;
pop ecx
pop edx
pop eax
end;
result:=round((speed / 1000000) / 3)*3; // div 3 * 3 a cose de busfeq
end;
2 sept. 2004 à 00:09
merci tout plein !
1 sept. 2004 à 22:03
uses Windows;
int64 est reconnu par Delphi 4....
Dword peut etre remplacer par Cardinal;
Bon Coding...
ManChesTer.
1 sept. 2004 à 02:30
connais pas : dword, int64
quelqu'un serait-il assez gentil pour nous traduire ça en Delphi ?
En plus, j'ai Delphi 4, et il ne reconnait pas :
- SetpriorityClass
- getcurrentprocess
- REALTIME_PRIORITY_CLASS
- SetThreadPriority
- getcurrentThread
- THREAD_PRIORITY_TIME_CRITICAL
- sleep
et il me trouve des erreurs de concordance de taille d'opérande
28 juin 2004 à 23:48
Je comprends pourquoi il faut le mettre en priorité ... haute :þ
(Chauffe Chauffffe mon DD ... :D !)
8 janv. 2004 à 21:59
Non ce n'est pas determinant mais indispensable pour obtenir un resultat valable, lol
en effet si windows ecrit sur le disque dur (par exemple) au moment ou tu lance la routine sans definir une prioritè "Haute", tu peux obtenir nimporte quel genre de valeur fantaisistes 4.888 mz pour un Pentium 200mz par exemple...
Windows est ultitache et il faut en tenir compte ;o))
Bon coding ...
ManChesTer.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.