Temps de calcul identique sur pc et station de calcul
Résolu
huta
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
cptpingu Messages postés 3840 Date d'inscription Statut Modérateur Dernière intervention -
cptpingu Messages postés 3840 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
je travaille sur un algorithme d'optimisation combinatoire, et j'ai lancé mon programme sur plusieurs instances de mon problème en utilisant un ordinateur dell latitude : intel(R) Core(TM) i7-4600U CPU @ 2.10GHz 2.70GHz avec 8,00 Go RAM et OS 64-bits
ainsi que sur une station de calcul Dell precision : intel(R) Core(TM) i7-4700MQ CPU @ 2.40GHz 2.40GHz avec 32 GO de RAM et un OS de 64 bits.
Sauf que le temps de calcul ne s'améliore pas.
Pourriez-vous m'orienter svp?
je travaille sur un algorithme d'optimisation combinatoire, et j'ai lancé mon programme sur plusieurs instances de mon problème en utilisant un ordinateur dell latitude : intel(R) Core(TM) i7-4600U CPU @ 2.10GHz 2.70GHz avec 8,00 Go RAM et OS 64-bits
ainsi que sur une station de calcul Dell precision : intel(R) Core(TM) i7-4700MQ CPU @ 2.40GHz 2.40GHz avec 32 GO de RAM et un OS de 64 bits.
Sauf que le temps de calcul ne s'améliore pas.
Pourriez-vous m'orienter svp?
A voir également:
- Calcul multithread excel
- Calcul moyenne excel - Guide
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
Un thread partage le même espace que les autres threads, tandis que le processus ne partage pas cet espace avec les autres processus. On parle souvent d'un thread en tant que "lightweight process". Pour plus de détails: http://www.kroah.com/lkn/
Ce qui veut dire que 3 threads sur un ordinateur ayant 4 coeurs, seront bien répartis sur tous les coeurs et non sur un seul comme pourrait laisser le supposer le post de "Rocailleux".
De même avoir 5 processus sur ce même ordinateur, voudra dire que ça sera "schedulé", et ça pourrait très bien ne tourner que sur un ou deux coeurs (dans la pratique, ça devrait tout de même être correctement réparti sur les 4).
Mon point étant que non, un processus ne sera pas mieux parallélisé qu'un thread (ou inversement), et conseiller de faire un processus au lieu d'un thread me paraît injustifié.
Le noyau attribue des quantum de temps, et fait avancer chacun des threads ou processus selon des ordres de priorité internes. Il est ensuite important de différencier parallélisation (tâches sur différents coeurs) et concurrence (multi-tâches au sein d'un des coeurs), afin de correctement ajuster le nombre de threads et éviter de l'overhead à cause du context switching.
Deux excellents bouquins sur le sujet: