Parfois, certains programmes fonctionnent mal sur certains PC ayant plusieurs processeurs. Ce programme permet donc de lancer un exécutable sur les processeurs de votre choix.
Pour lancer ce programme sans afficher la fenêtre, vous devez donner en argument un entier correspondant à l’affinité. L’entier sera considéré comme un masque de bits spécifiant les processeurs qui peuvent être sélectionnés.
Par exemple :
Entier | Masque | Processeurs N° |
---|---|---|
1 | 00000000 00000001 | 1 |
3 | 00000000 00000011 | 1, 2 |
7 | 00000000 00000111 | 1 à 3 |
9 | 00000000 00001001 | 1 et 4 |
127 | 00000000 01111111 | 1 à 7 |
Ligne de commandes :
AffinityPrograms n exec args
où n est l’affinité et exec le programme à lancer et où args est une chaine de caractères facultative correspondant aux arguments à fournir à exec
Si vous n’avez qu’un seul processeur, ce programme ne vous servira pas à grand chose 🙂
3 réponses à “Affinité d’un programme pour un processeur”
Merci pour ce petit bout de code !
Une erreur s’est glissé dans la description :
127 – 00000000 01111111 — 1 à 7
Corrigé, merci 🙂
Pour lancer une appli depuis une icone :
– Créez un raccourci de AffinityPrograms (sur le bureau par exemple)
– Faire un clic droit sur le raccourci et selectionnez « Propriétés »
– Dans l’editbox « Cible », ajoutez l’entier d’affinité et le nom du programme que vous voulez lancez (avec le chemin complet et entre guillemets) par exemple:
C:\Users\MyUserName\Desktop\AffinityPrograms.exe 8 « C:\Windows\system32\notepad.exe »
Ici 8 = selection du coeur numéro 4
– Vous pouvez au passage changer l’icone du raccourci pour qu’elle corresponde au programme que vous voulez lancer 🙂