Augmenter vitesse d'exécution

Augmenter vitesse d'exécution - Bench - Hardware

Marsh Posté le 23-12-2004 à 13:12:00    

Bonjour,  
 
Je "m'amuse" avec des nombres premiers de très grande taille. Le temps d'exécution de mon programme est très long. Pour aboutir, il faut souvent de 2 à 4 semaines. J'ai optimisé l'algo à fond! (avec l'aide du concepteur de la librairie que j'utilise : NTL. voir www.shoup.net/ntl/)  
 
Je cherche donc à "recenser" les différents moyens qui pourraient me permettre de grapiller un peu de temps.  Hélas, je n'y connais presque rien en hardware...  
Je fais appel à vous : quelles sont les solutions pratiques pour augmenter la vitesse d'exécution d'un programme ?
J'ai pensé à la mémoire RAM... est-ce utile?  
J'ai aussi pensé au cache... est-ce que ça peut faire qqchose?  
Je sais qu'il faut aussi combiner au mieux le couple Carte Mère (CM) - Processeur. Ainsi un gros processeur P4 équipé d'une CM à 133 MHz n'aura que de maigres performances... mais un proc à 1 GHz doublé d'une CM à 800 MHz pourra donner toute sa puissance.  
(Corrigez-moi si je me trompe.)  
Il existe aussi l'overclocking. (Mais bon, ça génère des erreurs et c'est pas souhaitable dans le cas de "calculs purs"...)  
 
Merci pour vos idées!  :hello:

Reply

Marsh Posté le 23-12-2004 à 13:12:00   

Reply

Marsh Posté le 18-01-2005 à 14:25:27    

...?

Reply

Marsh Posté le 18-01-2005 à 14:27:34    

Tu disposes de quel CPU en ce moment ?
Car dans ton cas, il te faut de la puissance de calcul brute, et ça ne passe quasiment que par un gros CPU des familles.
 
Voire config' bi-CPU si tu optimises ton programme pour fonctionner sur deux CPU.
 
Pour la RAM, tout dépend de la consommation mémoire. Tu montes à combien ?

Reply

Marsh Posté le 18-01-2005 à 14:32:49    

déjà en tuant les processus inutiles...


---------------
L'homme qui marche sur les mains n'a pas besoin de tongs  -  À vaincre sans péril, on triomphe sans gloire
Reply

Marsh Posté le 18-01-2005 à 14:37:47    

un bon athlon 64 ferait l'affaire ;)

Reply

Marsh Posté le 18-01-2005 à 14:40:12    

Peut-être pas, dépend des perfs des Intel vs. AMD pour les nombres ENTIERS (à moins qu'il n'y ait besoin de la FPU pour ce genre de calcul ? je ne sais pas, je ne m'y connais pas assez  :sweat:  )

Reply

Marsh Posté le 18-01-2005 à 15:31:20    

J'ai un Athlon 2200+ (1.8 GHz donc) et 512 Mo de RAM (le disque dur ne swappe pas...)
 
Qu'est-ce que la FPU?
 

Reply

Marsh Posté le 18-01-2005 à 15:35:46    

(Anglais : Floating Point Unit).
Coprocesseur arithmétique. Ce module est intégré à tous les processeurs depuis le 486 d'Intel. Il s'occupe de tous les calculs à virgule flottante déchargeant ainsi le CPU de cette tâche


---------------
L'homme qui marche sur les mains n'a pas besoin de tongs  -  À vaincre sans péril, on triomphe sans gloire
Reply

Marsh Posté le 18-01-2005 à 15:45:06    

FPU = "Floating-Point Unit", Unité de calcul en virgule flottante.
 
Je ne pense pas que tu te serves de calcul en virgule flottante pour ton calcul de nombres premiers, mais je peux me tromper, je ne connais pas du tout ton algo.
Ensuite il faudrait faire des benchs entre ton processeur, les processeurs actuels voire haut de gamme actuels, et comparer tout celà.
Ou, comme je le disais, envisager une config' bi-CPU, ce n'est peut être pas inintéressant dans ton cas (2 à 4 semaines de traitement  :ouch: ).
 
Pour la RAM, si ça ne swap pas, inutile d'en rajouter je pense. De toute façon ce genre de programme ne jure que par la puissance brute, je ne crois pas que tu aies besoin de beaucoup de RAM.
Néanmoins crée une log pour tracer la mémoire utilisée, des fois que.
 
EDIT : Sinon je rejoins aussi la remarque de otan : tuer tous les processus inutiles...
 
otan > le FPU est intégré depuis les 486 DX uniquement, pas les SX. ;)


Message édité par Elmoricq le 18-01-2005 à 15:51:58
Reply

Marsh Posté le 18-01-2005 à 16:28:42    

Pour avoir une indication de la différence de puissance dans les calculs scientifiques entre le 2200+ et les cpu récent, jette un oeil dans la section SETI, tu vera les différents temps.


---------------
/!\ DO NOT LOOK AT, TOUCH, INGEST OR ENGAGE IN CONVERSATION WITH ANY SUBSTANCES BEYOND THIS POINT. /!\
Reply

Marsh Posté le 18-01-2005 à 16:28:42   

Reply

Marsh Posté le 23-01-2005 à 18:48:43    

A 64 & os 64 :jap:

Reply

Marsh Posté le 28-01-2005 à 20:07:17    

tout cela coûte bien cher... :(
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed