UN PTIT CODE POUR PIKÉR LA VITESSE DES CPU INTEL RÈCENTS

cs_bgK Messages postés 131 Date d'inscription vendredi 7 juin 2002 Statut Membre Dernière intervention 19 janvier 2004 - 10 juin 2002 à 18:47
soumpro Messages postés 52 Date d'inscription samedi 25 octobre 2003 Statut Membre Dernière intervention 7 mai 2004 - 29 mars 2004 à 17:39
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/15191-un-ptit-code-pour-piker-la-vitesse-des-cpu-intel-recents

soumpro Messages postés 52 Date d'inscription samedi 25 octobre 2003 Statut Membre Dernière intervention 7 mai 2004
29 mars 2004 à 17:39
Bon , rien de particulier !
Il faut quand meme pousser un peu plus loin et ce n'est pas à 100% asm !
Enfin !
Scaq Messages postés 8 Date d'inscription lundi 7 octobre 2002 Statut Membre Dernière intervention 8 janvier 2014
7 oct. 2002 à 16:56
Il y a il me semble une erreur de pile...
ou sleep commence par pop
ton code asm est en 32bits,il est plus rapide de passer les parametre par les registres
Je me trompe peut être!:)
cs_ManChesTer Messages postés 374 Date d'inscription vendredi 20 octobre 2000 Statut Modérateur Dernière intervention 15 janvier 2021
12 juin 2002 à 03:31
C'est en effet une autre mèthode cam91.
Mais avec ton code, j'ai un plantage liè au fait que tu oublie de sauver les registres, qui bien sur sont modifiès par le call sleep.
Le rèsultat de ta routine est moins prècis (je ne comprend dailleur pas pq).

enfin ton code est un peux "camicase" mais peux convenir dans certains cas.
cs_cam91 Messages postés 19 Date d'inscription dimanche 9 juin 2002 Statut Membre Dernière intervention 4 février 2006
12 juin 2002 à 00:10
pas mal ton code, je ne connaissais pas le 'call sleep'.
Mais il y à une erreur, dw $310f stock la fréquence sur 64 bits dans edx:eax
(et non pas dans edx+eax). De plus il y a beaucoup de code inutile.
Je ne corrige pas l'erreur, mais je te propose un code plus simple
pour la même fonction qui est exact pour une fréquence <=4 Ghz.
Attention à diviser le résultat par 500000.


function Tform1.get_cpu_speed:dword;
asm
push 1 ;call sleep;dw $310F;mov ecx,eax;
push 500;call sleep;dw $310F;sub eax,ecx
end;
fabiin Messages postés 329 Date d'inscription mercredi 4 avril 2001 Statut Membre Dernière intervention 8 décembre 2009 6
11 juin 2002 à 10:46
t'1 cool !!!
ca marche bien en plus :-D
Utilisateur anonyme
11 juin 2002 à 00:09
cool!
:p
cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
10 juin 2002 à 21:07
Il est le premier, il a osé ! Ca mérite des encouragements, tout de même.
Félicitations, JLN.
Si c'est pas du vrai ASM ? Alors, que faut-il de plus ? ou de moins ?
Continues, mon gars...tu nous intéresses. [;-)]
cs_JLN Messages postés 371 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 17 juin 2013
10 juin 2002 à 19:51
Soyez sympa les gars, c'est le premier script et vous critiquez déjà. Attendez de voir la suite avant, non ??? Ceci dit il y a quand même un bout d'assembleur dans ce script, osez dire le contraire !
fabiin Messages postés 329 Date d'inscription mercredi 4 avril 2001 Statut Membre Dernière intervention 8 décembre 2009 6
10 juin 2002 à 19:10
d'où la catégorie Delphi et ASM bgK
fabiin Messages postés 329 Date d'inscription mercredi 4 avril 2001 Statut Membre Dernière intervention 8 décembre 2009 6
10 juin 2002 à 19:09
ca plante a
result:=cpu_speed;
:)
cs_bgK Messages postés 131 Date d'inscription vendredi 7 juin 2002 Statut Membre Dernière intervention 19 janvier 2004
10 juin 2002 à 18:47
C'est pas du vrai ASM, c'est pour ajouter dans un prog delphi !!! :)
Rejoignez-nous