recuperer nom du CPU ?! [visualc++] - C++ - Programmation
Marsh Posté le 25-08-2003 à 10:20:35
Poste le code que tu utilises, parce que là, hein....
Marsh Posté le 25-08-2003 à 10:47:09
chrisbk a écrit : asm + cpuid |
j'ai failli la faire, mais je me suis retenu
Marsh Posté le 25-08-2003 à 11:41:53
d'ailleurs j'ai un doute pour RDTSC ! l'autre jour je m'en suis servi pour calculer le nombre de cycles d'une routine, et il ne me sort jamais le même résultat !
Marsh Posté le 25-08-2003 à 11:51:41
Harkonnen a écrit : d'ailleurs j'ai un doute pour RDTSC ! l'autre jour je m'en suis servi pour calculer le nombre de cycles d'une routine, et il ne me sort jamais le même résultat ! |
etonnant
t'as mis ta routine en priorité run time ?
Marsh Posté le 25-08-2003 à 11:51:57
ReplyMarsh Posté le 25-08-2003 à 11:56:55
chrisbk a écrit : |
bah non, c'était meme pas sous Win, mais sous DOS !
j'aurais parfaitement compris si la différence était faible (de l'ordre de quelques milliers de cycles), mais j'avais quand même une différence à chaque fois de plusieurs millions de cycles (je passe de 8000000 à 10000000 d'un lancement à l'autre)
et c'est sous DOS, donc le multitache n'y est pour rien
Marsh Posté le 25-08-2003 à 11:58:59
meme pas un vieux TSR dans un coin ?
note, finalement, vu que le tps que met une instruction depend des conditions memoire (en cache ou pas...) ptet que ca joue la dessus ?
Marsh Posté le 25-08-2003 à 12:06:14
chrisbk a écrit : meme pas un vieux TSR dans un coin ? |
non, mais y'a une portion de code auto généré
chrisbk a écrit : |
bah dans ce cas, le nombre de cycles baisserait d'un lancement à l'autre, mais là il augmente à chaque lancement !
Marsh Posté le 25-08-2003 à 13:29:33
chrisbk a écrit : |
bin sous un noyau NT, fo être en ring 0 pour utiliser RDTSC (pour CPUID ptet pas) il me semble....
Marsh Posté le 25-08-2003 à 13:48:30
moi pas connaitre RDTSC, je fais du C/UNIX habituellement, la je suis en stage....et.....visual C++ sous windows, alors c un ptit peu different qd mm :-p!
pas d'asm svp ! lol
vous pouvez m'expliquer pour CPUID, c un soft ca non?!!!!!
merci pour votre aide!
Marsh Posté le 25-08-2003 à 13:52:06
Tient si ca peut t aider (sous Windows ce qui semble etre ton cas), ca reprend ce que te disais chrishbk/harko et bjone, et ca vient de la msdn
CPUID.c
Code :
|
CPUID.h
Code :
|
Exemple d'utilisation
Code :
|
Marsh Posté le 25-08-2003 à 13:57:31
husiana a écrit : moi pas connaitre RDTSC |
RDTSC est HS dans ce topic, c'est pour calculer le nombre de cycles qui se sont écoulés entre le moment ou le processeur a été lancé et le moment de l'appel à cette instruction (c'est de l'assembleur)
husiana a écrit : |
Ce serait pourtant le moyen le plus fiable d'obtenir ce que tu souhaites
husiana a écrit : |
Non, c'est une instruction assembleur qui te renvoie le CPUID du CPU.
Regarde le code de VisualC++, il est nickel et très explicite
Marsh Posté le 25-08-2003 à 14:05:46
Z:\Staff\cedric\pcany\codagemacro\newcpu\cpuid.cpp(51) : error C2400: inline assembler syntax error in 'opcode'; found 'xmm0'
Z:\Staff\cedric\pcany\codagemacro\newcpu\cpuid.cpp(56) : error C2400: inline assembler syntax error in 'opcode'; found 'xmm0'
Z:\Staff\cedric\pcany\codagemacro\newcpu\cpuid.cpp(61) : warning C4405: 'mm0' : identifier is reserved word
Z:\Staff\cedric\pcany\codagemacro\newcpu\cpuid.cpp(61) : error C2400: inline assembler syntax error in 'opcode'; found 'mm0'
Error executing cl.exe.
triste, c de l'asm j'suis incapable de debugger ca, vous avez une idée ?
et merci vous m'aider trop :-)!!!
Marsh Posté le 25-08-2003 à 14:11:10
bon, je viens de commenter le contenu de _os_support, et ca marche presque bien, il m'affiche des choses en fait, mais le pb c qu'il me dis que j'ai un p3 alors qu'au boulot c bel et bien un celeron, est-ce parce que c le mm noyau?
sinon, j'ai un pb pour acceder au sujet!!! il me mets une vieille erreur, je peux seulement repondre sans pouvoir lire ?! ca etre normal un fois?
Marsh Posté le 25-08-2003 à 14:16:11
J ai le mm pb concenrant le forum la sur ce sujet, j ai desactive ds mon profile compression zlib et html ca remarche.
Marsh Posté le 25-08-2003 à 14:20:52
non moi ca fais tjs pareil, je dois faire "afficher le sujet en integralité" pour pouvoir le lire...!
sinon j'ai pensé, un celeron est un P3 d'une famille differente, dc ca dois fonctionner?
merci encore pour tt :-p!
Marsh Posté le 25-08-2003 à 10:15:47
voila, j'ai des pb pour recuperer le nom du cpu, sous win XP aucun pb ac la base de registre mais sous 2000 pro ca chie, une idée..?