J'ai une question que j'ai essayé de trouver une réponse, mais on m'a donné plus confus de toutes les informations que je trouve - malheureusement, ne pouvait pas obtenir une réponse clairenombre optimal de threads lorsque hyperthreading est désactivé
Ainsi, Disons que j'ai un ordinateur avec hyperthreading éteint.
Quel est le nombre optimal de threads que je devrais utiliser dans un programme que j'ai écrit? Je comprends que si mon programme n'est pas lié à 100% CPU (traite avec IO), donc le nombre optimal de threads sera de plus d'un thread par cœur - car je vais avoir plusieurs threads qui attendent, et avoir plus (pas trop en raison du changement de contexte) sera meilleur pour ce genre de programmes. MAIS, Dans le cas où mon programme est lié à 100% CPU - un thread par cœur est l'optimal? Je suis confus car j'ai plus de threads, ce qui signifie que je peux gagner du temps pour chaque thread - ce qui peut améliorer les performances.
Merci!
Je n'ai pas de réponse claire, mais vous pouvez toujours comparer votre programme. –
Impossible de répondre sans connaître la charge de travail. Plus de threads signifient une tranche * plus petite * et plus de frais généraux si tous sont en cours d'exécution. –