Définir l'affinité .exe sans raccourci

0

Je ne veux pas énoncer un problème XY incomplet, alors voici la situation complète:

X

J'exécute des versions dans Visual Studio sur ma machine Windows 7, en utilisant à la fois des versions parallèles et une compilation parallèle. Désactiver l'un ou l'autre n'est pas une option.

Mon problème est que parfois, cela engendre tellement cl.exe (compilateur) traite tous les processus ralentis, l'interface utilisateur ne répond plus, etc.

La machine dispose de 12 noyaux effectifs (6 w / hyperthreading).

Y

Mon idée pour résoudre ce problème est de limiter cl sur seulement 11 ou 10 des cœurs disponibles, de sorte que la machine entière ne puisse plus réagir. Malheureusement, je n'ai pas réussi à trouver un moyen de le faire.

J'ai trouvé des moyens de définir l'affinité pour l'application à l'aide d'un raccourci ( .lnk ) à la demande, mais cela ne s'applique pas dans ma situation car cl.exe est lancé par Visual Studio en interne et non directement par moi.

J'ai également trouvé des moyens de définir l'affinité d'un processus en cours d'exécution, mais cela ne m'est pas non plus utile (si rien d'autre, le cl.exe les processus se terminent et sont générés tout au long de la construction, ils ne sont pas longs).

Je cherche un moyen de faire la Y partie, mais des moyens alternatifs pour résoudre le X problème (absence de réponse causée par un trop grand nombre de processus en cours d'exécution, d'arrêt et de démarrage) sont également les bienvenus.

Angew
la source
Ne pouvez-vous pas simplement réduire le nombre de constructions parallèles? article msdn
PTwr
@PTwr Malheureusement non. Comme je l’ai dit, c’est une combinaison de versions parallèles (dont parle le propos de MSDN) et de compilation parallèle ( /MP commutateur). Et je ne peux pas me débarrasser de l’un ou de l’autre, car les constructions impliquent également Fortran, qui ne possède que des constructions parallèles.
Angew
Ah, alors je suppose que ce sera juste une question de définir une affinité permanente. Je pense avoir utilisé outil comme ça ou quelque chose de similaire dans le passé. Ou vous pouvez configurer une machine virtuelle avec des cœurs limités;)
PTwr
@PTwr Cela ressemble à une réponse pour moi - en gros, ma question est "comment définir une affinité paranente?" Cela fait "avec cet outil gratuit" une réponse valide OMI.
Angew
Je préférerais le tester d'abord par moi-même, pour l'instant son rappel de mémoire aléatoire.
PTwr