Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2081 connectés 

  FORUM HardWare.fr
  Hardware
  Carte mère

  Bug FPU sur XP2800+ FSB333 ???

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Bug FPU sur XP2800+ FSB333 ???

n°3315114
Raxor
Posté le 05-07-2004 à 02:37:15  profilanswer
 

Bonjour a tous,
 
Je viens d'avoir une drole de surprise Sous Excel 2003 Fr;
en tapant le formule suivante:=39-37,8-1,2
j'obtiens les resultat 2,88658E-15 au lieu de 0 ... bug excel ou CPU ??
Pouvez-vous essayer sur vos machine ??
Merci par avance

mood
Publicité
Posté le 05-07-2004 à 02:37:15  profilanswer
 

n°3315140
hybridtheo​ry2
Posté le 05-07-2004 à 05:12:48  profilanswer
 

Put1 zarb ton pb
j'ai le mm pb "resultat 2,88658E-15 au lieu de 0" sa sent le gros bugs à plein nez
p4 + excel 2002

n°3315143
hybridtheo​ry2
Posté le 05-07-2004 à 05:25:50  profilanswer
 

je parlais  d"un bug de programmation :fou:  
si le pb venait du cpu le resultat serait+ aléaroire et encore la ram y est souvent pour quelque chose ...
 
ps: c'est une honte pour M$, excel leur soft de compta est buggé :ouch:  :kaola:


Message édité par hybridtheory2 le 05-07-2004 à 05:27:06
n°3315146
Tatsuya
Posté le 05-07-2004 à 06:07:19  profilanswer
 

Tiens, c'est drôle, ça le fait aussi sous google si tu tapes l'opération en recherche: il t'affiche l'option calculette qui donne le même résultat louche. C'est un truc connu? y a une astuce ou c'est vraiment un sale bug exclusif? :)


Message édité par Tatsuya le 05-07-2004 à 06:07:35
n°3315702
Raxor
Posté le 05-07-2004 à 12:45:53  profilanswer
 

Je ne sais pas ... En tout cas c'est vraiement par hazard que j'ai decouvert ce blem.

n°3315879
jc the gre​at
Posté le 05-07-2004 à 13:37:38  profilanswer
 

pareil pour =39-37,3-1,7
en format standard seulement (c'est une histoire d'arrondi en virgule flottante). Certains nombres décimaux en base 10 ne peuvent pas etre écris (sans perte) en base 2.


---------------
"L'autodidacte, qui dans la vie, est parti de zéro pour n'arriver à rien dans l'existence, n'a de merci à dire à personne." (Pierre Dac)
n°3315904
ludo021288
Halte au troll!
Posté le 05-07-2004 à 13:44:27  profilanswer
 

M^ême problème avec Excel2003 +p4c 2.6 donc je pense pa que ca vienne du proco.. Grosoft a du ns pondre encore un programme buggé jusqu'à la moelle (ca me rappele windows Me ça)

n°3316011
hybridtheo​ry2
Posté le 05-07-2004 à 14:20:41  profilanswer
 

en format standard seulement
 Qu'es ce que tu veux dire par là?
 
(c'est une histoire d'arrondi en virgule flottante).  
 c'est quoi cette sombre histoire d'arrondie, c'est ultra simple comme calcul là :pt1cable: nos procos sont capables de traitrer des calculs en virgule flottante en double precision  
 
Certains nombres décimaux en base 10 ne peuvent pas etre écris (sans perte) en base 2.
  :heink:  quoi 39-37,3-1,7  :lol:  
prend n'importe quel calculette tu verras :whistle:  
par contre si tu me dis que c'est liée au language de programmation utilisé, c'est limite plus crédible


Message édité par hybridtheory2 le 05-07-2004 à 14:21:33
n°3316053
hybridtheo​ry2
Posté le 05-07-2004 à 14:37:22  profilanswer
 

Au put1 les gars j'ai trops les boules
j'ai sortie le Python 2.3.3 (language de programmation)
mm topo = 2.886579864025407e-015
 deja pour lui 39-37.3 = 1.7000000000000028

n°3316070
jc the gre​at
Posté le 05-07-2004 à 14:47:01  profilanswer
 

je parle du format de cellule standard d'excel.
Certains types de donnée flottant sont stockés matériellement sous la forme Mantissse + 2 puissance Exposant. Ca n'a rien d'un bug vous me faites rire !


Message édité par jc the great le 05-07-2004 à 14:49:44

---------------
"L'autodidacte, qui dans la vie, est parti de zéro pour n'arriver à rien dans l'existence, n'a de merci à dire à personne." (Pierre Dac)
mood
Publicité
Posté le 05-07-2004 à 14:47:01  profilanswer
 

n°3316090
umbre_tomb​etoile
Zorglub's back
Posté le 05-07-2004 à 15:01:28  profilanswer
 

Z'avez essayé ça :
-37,3-1,7+39
 
et là ça fait bien 0.
Marrant non ???
 
Edit :
Par contre :
-37,3+39-1,7 -> 2,88658E-15 comme 39-37,3-1,7.
Astonishing not ???


Message édité par umbre_tombetoile le 05-07-2004 à 15:03:09
n°3316107
Lacrimosa
Posté le 05-07-2004 à 15:10:45  profilanswer
 

jc the great : si tu choisis format de cellule nombre et que tu tape 30 décimale de précisions c ce résultat qu'on obtient ... c bizarre quand meme cette opération


---------------
Une faible lumière de bougie lutte dehors devant ma porte et réchauffe ma petite étincelle de vie.
n°3316112
Lacrimosa
Posté le 05-07-2004 à 15:12:25  profilanswer
 

Je viens d'essayer avec Star Office 5.2 et je n'ai pas d'erreur, 0 tjs meme avec 20 décimales...


---------------
Une faible lumière de bougie lutte dehors devant ma porte et réchauffe ma petite étincelle de vie.
n°3316138
jc the gre​at
Posté le 05-07-2004 à 15:24:20  profilanswer
 

une jolie aussi:=10^15 -37,2 -10^15 = ... -37.25 !! ca fait une erreur de  0.05 quand meme ...
 
edit: une autre: =1234567890123456789 ca devient =1234567890123450000


Message édité par jc the great le 05-07-2004 à 15:28:33

---------------
"L'autodidacte, qui dans la vie, est parti de zéro pour n'arriver à rien dans l'existence, n'a de merci à dire à personne." (Pierre Dac)
n°3316145
jc the gre​at
Posté le 05-07-2004 à 15:25:46  profilanswer
 

Lacrimosa a écrit :

jc the great : si tu choisis format de cellule nombre et que tu tape 30 décimale de précisions c ce résultat qu'on obtient ... c bizarre quand meme cette opération


 
je comprends pas ce que tu dis. quel résultat ? avec quels opérations ?


---------------
"L'autodidacte, qui dans la vie, est parti de zéro pour n'arriver à rien dans l'existence, n'a de merci à dire à personne." (Pierre Dac)
n°3316154
Lacrimosa
Posté le 05-07-2004 à 15:29:42  profilanswer
 

je veux dire si on laisse le format standard de excell on obitent la version avec E15, si on passe en format cellule nbr, on a 0.00 mais si on passse en nbr précision 30 décimales, on a bien le 0.00...02886... mais pas quand on le fait dans le classeur star office, c étrange quand meme, non?
 
Sinon excell ou star office se plante dans ton autre exemple...
 
EDIT mais pas dans le dernier que tu as édité si on précise avant la précision


Message édité par Lacrimosa le 05-07-2004 à 15:32:30

---------------
Une faible lumière de bougie lutte dehors devant ma porte et réchauffe ma petite étincelle de vie.
n°3316197
jc the gre​at
Posté le 05-07-2004 à 15:59:06  profilanswer
 

Pour représenter la valeur 13.5 en décimal c'est :
1*10^1 + 3*10^0 + 5*10^-1
 
(l'exposant de la base de calcul est négatif à droite de la virgule)
 
Pour représenter la valeur 13.5 en binaire 1101.1 :
1*2^3 + 1*2^2 + 0*2^1 + 1*2^0 + 1*2^-1
 
(l'exposant de la base de calcul est négatif à droite de la virgule)
 
Pour 13.5 la représentation décimal et binaire est exacte.
 
Maintenant essaie cette décomposition pour 13.3 ! tu verras que ca n'est possible qu'en approximation.
1101.01001...(13.28125...) etc
 
edited pour les maux de crane ;)


Message édité par jc the great le 05-07-2004 à 16:10:23

---------------
"L'autodidacte, qui dans la vie, est parti de zéro pour n'arriver à rien dans l'existence, n'a de merci à dire à personne." (Pierre Dac)
n°3316200
umbre_tomb​etoile
Zorglub's back
Posté le 05-07-2004 à 16:00:06  profilanswer
 

jc the great a écrit :

13.5 c'est :
1*10^1 + 3*10^0 + 5*10^-1
 
en binaire 1101.1 :
1*2^0 + 0*2^1 + 1*2^2 + 1*2^3 + 1*2^-1
 
la ca tombe juste. Maintenant essaie cette décomposition pour 13.3 ! tu verras que ca n'est possible qu'en approximation.
1101.01001...etc


 
J'ai un mal de tronche moi  :(  :( .....

n°3316208
Lacrimosa
Posté le 05-07-2004 à 16:05:48  profilanswer
 

Ca n'explique pas pouruqoi Star office ne se plante pas et bien excell


---------------
Une faible lumière de bougie lutte dehors devant ma porte et réchauffe ma petite étincelle de vie.
n°3316222
jc the gre​at
Posté le 05-07-2004 à 16:12:27  profilanswer
 

double la mantisse et star office se plantera aussi.
Peut etre que StarOffice n'a pas les memes types par défaut qu'Excel, pourquoi auraient ils les memes d'abord ... ?


---------------
"L'autodidacte, qui dans la vie, est parti de zéro pour n'arriver à rien dans l'existence, n'a de merci à dire à personne." (Pierre Dac)
n°3316227
Lacrimosa
Posté le 05-07-2004 à 16:16:08  profilanswer
 

que veux tu dire par double la mantisses? (lol dsl d'etre aussi inculte)


---------------
Une faible lumière de bougie lutte dehors devant ma porte et réchauffe ma petite étincelle de vie.
n°3316249
jc the gre​at
Posté le 05-07-2004 à 16:24:09  profilanswer
 

je veux dire, augmente le nombre de chiffre significatif dans tes calculs.
12345678901234567890123456789/5*5 par exemple. on devrait bien finir par le faire craquer aussi le SO !
Si ca se trouve staroffice utilise des types de donnée très large ou dynamique et dans ce cas on ne pourra pas mettre en défaut staroffice de manière simple.


---------------
"L'autodidacte, qui dans la vie, est parti de zéro pour n'arriver à rien dans l'existence, n'a de merci à dire à personne." (Pierre Dac)
n°3316251
Tetedeienc​h
Head Of God
Posté le 05-07-2004 à 16:24:14  profilanswer
 

HybridTheory2 a écrit :

en format standard seulement
 Qu'es ce que tu veux dire par là?
 
(c'est une histoire d'arrondi en virgule flottante).  
 c'est quoi cette sombre histoire d'arrondie, c'est ultra simple comme calcul là :pt1cable: nos procos sont capables de traitrer des calculs en virgule flottante en double precision  
 
Certains nombres décimaux en base 10 ne peuvent pas etre écris (sans perte) en base 2.
  :heink:  quoi 39-37,3-1,7  :lol:  
prend n'importe quel calculette tu verras :whistle:  
par contre si tu me dis que c'est liée au language de programmation utilisé, c'est limite plus crédible


 
C'est lié au mode FPU plutot...

n°3316271
Lacrimosa
Posté le 05-07-2004 à 16:32:25  profilanswer
 

Bon enfin on dira ce qu'on voudra c quand meme etrange ce calcul qui parait ultra simple a premeire vue...


---------------
Une faible lumière de bougie lutte dehors devant ma porte et réchauffe ma petite étincelle de vie.
n°3316279
Tatsuya
Posté le 05-07-2004 à 16:36:42  profilanswer
 

C'est clair, peu importe l'explication derrière ça, ça reste quand même un bug abérant pour l'utilisateur. C'est vraiment un calcul de base!

n°3316297
jc the gre​at
Posté le 05-07-2004 à 16:43:12  profilanswer
 

:sarcastic:
:hello:


Message édité par jc the great le 05-07-2004 à 16:43:47

---------------
"L'autodidacte, qui dans la vie, est parti de zéro pour n'arriver à rien dans l'existence, n'a de merci à dire à personne." (Pierre Dac)
n°3317484
Raxor
Posté le 06-07-2004 à 02:36:27  profilanswer
 

Tatsuya a écrit :

C'est clair, peu importe l'explication derrière ça, ça reste quand même un bug abérant pour l'utilisateur. C'est vraiment un calcul de base!


C'est clair ...  :fou:  
En tout cas, cela fait un peu peur pour des calculs bcq plus compliques .... :heink:

n°3317603
Tetedeienc​h
Head Of God
Posté le 06-07-2004 à 09:09:10  profilanswer
 

Tatsuya a écrit :

C'est clair, peu importe l'explication derrière ça, ça reste quand même un bug abérant pour l'utilisateur. C'est vraiment un calcul de base!


 
C'est pas lié à Excel mais à la gestion de la FPU par le CPU. Pour accélérer les choses, ils utilisent des FPU limitées en taille et donc limitées en précision.
 
C'est tout, y a rien d'original...
 
Ca fait des années que c'est connu, et on ne peut rien faire. Ce n'est pas un bug mais une erreur d'arrondi.
 
La preuve :
 
=39-37.9-1.1 renvoie 0.


Message édité par Tetedeiench le 06-07-2004 à 09:10:36
n°3320057
Raxor
Posté le 07-07-2004 à 02:48:32  profilanswer
 

Non, ce n'est pas normal. Travaillant dans le domaine de la micro-elec (Mon titre Msc IC Design Engineer), je suis parfaitement au courrant du probleme dont tu parle. On pourrait parler de bug dans le cas ou ce phenomene existerait sur une seule plate-forme, mais dans ce cas precis l'erreur se produit sur Intel & AMD.
La base de raisonnement de jc the great est correct, mais ne tiens pas face a mon probleme pour plusieurs raison:
1/ 39 est un nombre entier, donc tres facile a ecrire en binaire
2/ 37.80 & 1.20 sont certe des nombres a virgule, mais ils sont pair et fini !!! Donc cela ne pose aucun probleme pour les ecrire en binaire.
Donc le probleme est ailleurs.

n°3320063
Anakin Sky​walker
Ubuntu user
Posté le 07-07-2004 à 03:24:13  profilanswer
 

En tout cas, avec Open Office Calc, =(39-37,8-1,2) renvoie 0 et =(39-37,9-1,1) renvoie 0 aussi.
 
(sur un Athlon XP 1800+)

n°3320082
Gold007
Duck and Cover
Posté le 07-07-2004 à 05:12:16  profilanswer
 

Je trouve ca très bizarre même si je comprend pourquoi cela donne ce résultat (et même dans google :P )  Pour un grand logiciel comme excel il y aurai pu avoir un léger effort, même si en numérique ca marche bien.

n°3320296
jc the gre​at
Posté le 07-07-2004 à 10:46:03  profilanswer
 

Raxor a écrit :

Non, ce n'est pas normal. Travaillant dans le domaine de la micro-elec (Mon titre Msc IC Design Engineer), je suis parfaitement au courrant du probleme dont tu parle. On pourrait parler de bug dans le cas ou ce phenomene existerait sur une seule plate-forme, mais dans ce cas precis l'erreur se produit sur Intel & AMD.
La base de raisonnement de jc the great est correct, mais ne tiens pas face a mon probleme pour plusieurs raison:
1/ 39 est un nombre entier, donc tres facile a ecrire en binaire
2/ 37.80 & 1.20 sont certe des nombres a virgule, mais ils sont pair et fini !!! Donc cela ne pose aucun probleme pour les ecrire en binaire. fais le avec 13.3, on est tout ouï !!
Donc le probleme est ailleurs.


 
1/ un calcul impliquant des nombres décimaux et des entiers va travailler sur des flottants, sinon des résultats intermédiaires sont faux
2/ ils ne sont finis qu'en base dix. la décomposition que j'ai faite, vous ne l'avez pas lue ?
Les processeurs stockent les infos en binaire.
Comment écris tu de maniere finie 13.3 en binaire ?!!
 
ce nombre ne peux pas s'écrire de maniere finie en base 2.
Tu peux élargir tes types sur toutes ta mémoire vive le probleme resurgira de toutes les facons.


Message édité par jc the great le 07-07-2004 à 10:47:54

---------------
"L'autodidacte, qui dans la vie, est parti de zéro pour n'arriver à rien dans l'existence, n'a de merci à dire à personne." (Pierre Dac)
n°3322744
Raxor
Posté le 08-07-2004 à 01:10:13  profilanswer
 

1/ Sur les projets que j'ai travaille, on gerait les flottants de la facon suivante:
ex pour 11.75:
... 32 16 8 4 2 1   1/2 1/4 1/8 1/16 ...
...  0  0 1 0 1 1    1   1   0   0   ...
Donc tout nombre flottant mutliple de 2, peux s'ecrire de maniere fini ....
 
Euuuh .... Mmmm... Dis-moi on ne serait pas d'accord tout les deux ??? Je viens de relire ton post. Dans ton example tu sites le case de 13.3 ... J'avais mal lu ..
Mais tu es d'accord pour dire que 37.8 et 1.2 sont des ecrivable de facon fini en binaire ?? Et que le resultat obtenu est aberant ??
 
 

n°3322865
Gold007
Duck and Cover
Posté le 08-07-2004 à 03:11:34  profilanswer
 

Oui il peuvent s'écrire de facon fini, mais pas en simple précision comme le format de excel a l'air de faire et en double précision le chiffre peut etre fini alors le résultat est juste, j'ai la flemme de calculer combien donne 1.2 et 37.8 en binaire.
 
Et depuis quand 11.75 est une multiple de deux ?

n°3323082
JulioGlace​s
Posté le 08-07-2004 à 10:10:34  profilanswer
 

Pour les conversions : http://perso.univ-lr.fr/pcourtel/h [...] iee754.htm.
Pour convertir en flottant il faut d'abord l'écrire sous la forme 0.X*10^Y on ecrit Y en binaire (entier en complément vrai) sur 8 ou 11 bits,c'est l'exposant, ensuite on écrit X sous forme de somme de puissance négative de 2 (0.5+0.25+etc ....) comme ça va forcément commencer par un 0 on l'enlève ça donne la mantisse sur 23 ou 52 bits et ya plus qu'à rajouter le signe donc ça fait 32 ou 64 bits.

n°3330153
Raxor
Posté le 11-07-2004 à 00:38:16  profilanswer
 

Bref.... en conclusion c'est un bug hallucinant de Excel.

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Hardware
  Carte mère

  Bug FPU sur XP2800+ FSB333 ???

 

Sujets relatifs
Bug, ralentissement graphiquebug de symantec
Bug graphique dans le biosChaleur, source de bug?
ca bugBesion d'avais d'expert sur une panne-Bug......
Memtest bug. Il se bloque!!Bug graphique bizarre dans le bios...
bug d'ombreBug dans le BIOS
Plus de sujets relatifs à : Bug FPU sur XP2800+ FSB333 ???


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)