-
Thread sous vc++
Bonjour à tous,
J'aimerai bien utiliser le multi threading pour paralléliser mon programme. J'ai aucune expérience sur ce domaine (thrading).
J'ai vu ce qu'il y a au niveau du FAQ et je ne comprends pas grande chose.
Je cherche un petit exemple qui fait le calcul de x et y en parallèle :
x=a+b
y=c+d
le multi threading est il vraiment la solution?
Une autre question qui s'impose : j'ai 1000 opérations qui peuvent être réalisé en parallèle. Qu'elle est la répartition idéal pour optimiser le temps de calcul?
Je veux dire par là :
lancer les 1000 opérations en parallèle
ou lancer 100 opérations en parallèle sur 10 fois (10 séquences séquentielles de 100 opérations en parallèle)
j'espère que c'est clair.
Merci
-
Pour un temps de calcul optimal, il faut lancer autant de thread qu'il y a de processeur. Les thread ont un coût, et 2 thread s'exécutant sur le même processeur seront un peu plus lent qu'un thread tout seul. Pour 2 thread ça change rien. Pour 10 c'est déjà moins sûr, pour 100...