Comment allouer manuellement des cœurs de processeur à un programme sous Windows 10

Windows 10 propose de nombreuses options avec lesquelles vous pouvez jouer pour obtenir de meilleures performances. Les fonctionnalités d'affinité du processeur et de priorité du processeur de Windows 10 sont parmi les plus ingénieuses, et bien qu'elles ne soient pas une solution miracle pour des améliorations instantanées des performances, elles feront la différence si vous avez du matériel vieillissant.

Compte tenu de la sensibilité des processus, vous ne devez définir l'affinité du processeur et la priorité du processeur que si vous êtes à l'aise avec les choses qui vont mal. Cependant, si vous êtes prêt à modifier votre système pour qu'il soit le meilleur possible, explorons comment définir l'affinité du processeur et la priorité du processeur dans Windows 10.

Qu'est-ce que l'affinité du processeur dans Windows 10 ?

Chaque système d'exploitation a un algorithme de planification sous-jacent. L'algorithme de planification est responsable de la distribution des ressources informatiques aux différents processus ou threads. Dans Windows 10, des centaines de processus peuvent être exécutés en même temps.

Le processeur ne peut pas gérer tous ces processus simultanément, donc l'algorithme de planification gère ces processus et leur attribue du temps processeur en fonction de plusieurs facteurs.

En tant que tel, Processor Affinity peut être considéré comme un utilisateur s'ingérant dans le planificateur. Normalement, l'algorithme de planification de Windows décide quel processus s'exécutera sur quel cœur de processeur. Si vous définissez manuellement l'affinité du processeur, vous pouvez forcer un processus ou un thread à s'exécuter sur le cœur de votre choix.

En termes simples, Processor Affinity vous permet d'affecter un ou plusieurs cœurs de processeur à n'importe quel processus ou thread de votre choix . Les processus ou threads pour lesquels vous définissez l'affinité ne s'exécuteront que sur les cœurs spécifiés.

Cependant, cela ne rendra pas les cœurs exclusifs à ces processus uniquement. Windows peut toujours affecter différents processus à ces cœurs. La définition de l'affinité du processeur n'affecte que les processus que vous choisissez en les faisant s'exécuter uniquement sur les cœurs affectés.

Qu'est-ce que la priorité CPU dans Windows 10 ?

Comme nous l'avons expliqué ci-dessus, il peut y avoir des centaines de processus ou de threads en compétition pour le temps CPU à tout moment dans Windows 10. Pour s'assurer que les processus et les threads importants obtiennent un accès prioritaire aux ressources CPU, le programme Windows attribue la priorité à chaque processus et thread. fonctionnant sur le système d'exploitation.

Par exemple, l'algorithme de planification de Windows accorde une haute priorité aux processus Windows critiques tels que le système et l'explorateur Windows. Si ces processus sont dans une file d'attente, ils auront accès au processeur avant les processus de faible priorité.

En relation: Processus du gestionnaire de tâches Windows que vous ne devriez jamais tuer

Ainsi, lorsque vous définissez manuellement la priorité CPU d'un processus sur haute, le planificateur Windows s'assurera que ce processus obtient un accès prioritaire aux ressources CPU.

Enfin, CPU Priority est assez différent de Processor Affinity. Lorsque la définition de la priorité du processeur d'un processus indique au calendrier comment traiter ce processus, la définition de l'affinité du processeur verrouille un processus sur un ou plusieurs cœurs de processeur spécifiques. Avec l'affinité du processeur définie, même si le processus a une priorité élevée ou faible, il s'exécutera sur le ou les cœurs spécifiés.

Pourquoi vous pourriez vouloir affecter des programmes à des cœurs de processeur spécifiques

L'un des plus gros problèmes auxquels l'informatique moderne doit faire face est un grand nombre de programmes à thread unique. Même en 2021, où la plupart des processeurs sont quadricœurs ou supérieurs, certains programmes ne profitent que d'un des nombreux cœurs disponibles.

Connexes : Intel Core i3 contre i5 contre i7 : quel processeur devriez-vous acheter ?

Cela pose un problème pour les planificateurs de systèmes d'exploitation modernes : comment planifier des processus monothread sur des processeurs multithread sans rompre la compatibilité ?

Pour la plupart, les planificateurs modernes planifient efficacement des processus à thread unique sur les processeurs modernes. Mais il arrive parfois qu'un programme hérité tombe en panne à cause d'une mauvaise compatibilité. C'est là que le réglage de l'affinité du processeur peut vous aider.

L'affinité du processeur limite les processus à l'exécution sur les cœurs de processeur spécifiés. Dans le cas des programmes à thread unique hérités, vous pouvez restreindre ces processus à un seul cœur de processeur en définissant l'affinité du processeur.

En dehors de cela, les personnes disposant de machines plus faibles peuvent également bénéficier d'une priorité élevée pour leurs tâches importantes. Par exemple, si vous êtes un éditeur vidéo, vous pouvez définir votre programme de rendu sur une priorité élevée avant de commencer un rendu vidéo. De cette façon, lorsque vous souhaitez effectuer le rendu d'une vidéo, Windows sait consacrer la majeure partie de son attention à la lecture de votre vidéo.

Comment définir l'affinité du processeur et la priorité du processeur

Pour définir l'affinité du processeur et la priorité du processeur, vous devrez ouvrir le gestionnaire de tâches et continuer à partir de là.

Alors, ouvrez le Gestionnaire des tâches en cliquant avec le bouton droit sur la barre des tâches de Windows 10 et en sélectionnant Gestionnaire des tâches . Accédez ensuite au processus pour lequel vous souhaitez définir l'affinité.

Ensuite, faites un clic droit sur ce processus et choisissez Aller aux détails .

Le processus que vous choisissez sera mis en évidence dans le nouveau panneau qui apparaît. Cliquez avec le bouton droit sur le processus en surbrillance et sélectionnez Définir l'affinité . Le panneau Processor Affinity apparaîtra maintenant.

Dans le panneau Processor Affinity, désélectionnez les cœurs de processeur sur lesquels vous ne souhaitez pas que le processus s'exécute. Ensuite, cliquez sur Ok . L'affinité du processeur sera maintenant définie et le processus que vous avez choisi ne s'exécutera que sur les cœurs de processeur sélectionnés.

Pour définir la priorité du processeur, cliquez avec le bouton droit sur n'importe quel processus dans le Gestionnaire des tâches et sélectionnez Aller aux détails .

Ensuite, faites un clic droit sur le processus en surbrillance et cliquez sur Définir la priorité .

Maintenant, choisissez la priorité dans la liste qui apparaît. Si vous souhaitez que votre processus s'exécute dès qu'il en a besoin, sélectionnez Temps réel .

Cependant, si vous choisissez Realtime , d'autres processus système potentiellement critiques seront en attente dans la file d'attente. Cela peut entraîner un ralentissement général du système dans le cas le plus léger et une défaillance complète du système dans le pire des cas, alors soyez prudent lorsque vous définissez un processus sur la priorité Temps réel.

En revanche, il est plus sûr de sélectionner une priorité élevée tant que vous ne mettez pas trop de processus en priorité élevée.

Les autres options de la liste, à savoir Au-dessus de la normale , Normal , En dessous de la normale et Faible , sont explicites.

Ne définissez pas l'affinité du processeur et la priorité du processeur si vous ne savez pas ce que vous faites

Vous ne devez définir l'affinité du processeur et la priorité du processeur que si vous savez ce que vous faites. L'augmentation des performances, bien que majeure dans certains cas, ne vaut pas les ennuis que vous pouvez rencontrer en cas de problème. Des ralentissements aux plantages aléatoires du système, la définition de l'affinité et de la priorité ne devrait être que votre dernière option.

L'affinité du processeur et la priorité du processeur ne sont pas les seuls moyens d'augmenter les performances de Windows 10. Il existe une myriade d'astuces matérielles et logicielles que vous pouvez utiliser pour obtenir des performances de votre matériel vieillissant.