Pour profiler un programme de façon fiable, je souhaite le lancer avec la
priorité SCHED_FIFO. J'utilise un dual-core, donc ça ne devrait pas
bloquer la machine. Mais une fois la chose faite avec
sudo chrt --fifo 1 ./monprog
qui place ./monprog sur le CPU 1 (par exemple), le scheduler ne déplace
pas automatiquement les autres processus sur le CPU 0. Et même pire, il me
semble qu'il place de temps en temps sur 1 des processus qui n'y étaient
pas, car par exemple j'ai des blocages répétés du WM pendant quelques
secondes.
Je cherche donc un moyen d'attacher tous les processus à un CPU donné le
temps de faire mes mesures, puis de les « libérer ». (Je suppose qu'il ne
faut les attacher tous au sens strict, par exemple des threads du noyau
doivent être spécifiquement liés à un cœur, non ?)
Merci pour toute aide, ou autre solution à mon problème.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Kevin Denis
Le 01-02-2011, Lucas Levrel a écrit :
Je cherche donc un moyen d'attacher tous les processus à un CPU donné le temps de faire mes mesures, puis de les « libérer ». (Je suppose qu'il ne faut les attacher tous au sens strict, par exemple des threads du noyau doivent être spécifiquement liés à un c??ur, non ?)
Eventuellement man taskset ? -- Kevin
Le 01-02-2011, Lucas Levrel <lucas.levrel@u-pec.fr> a écrit :
Je cherche donc un moyen d'attacher tous les processus à un CPU donné le
temps de faire mes mesures, puis de les « libérer ». (Je suppose qu'il ne
faut les attacher tous au sens strict, par exemple des threads du noyau
doivent être spécifiquement liés à un c??ur, non ?)
Je cherche donc un moyen d'attacher tous les processus à un CPU donné le temps de faire mes mesures, puis de les « libérer ». (Je suppose qu'il ne faut les attacher tous au sens strict, par exemple des threads du noyau doivent être spécifiquement liés à un c??ur, non ?)
Eventuellement man taskset ? -- Kevin
Lucas Levrel
Le 1 février 2011, Lucas Levrel a écrit :
Je cherche donc un moyen d'attacher tous les processus à un CPU donné le temps de faire mes mesures, puis de les « libérer ».
Ne cherchez plus, j'ai trouvé : cset fait exactement ça (et même plus). https://rt.wiki.kernel.org/index.php/Cpuset_management_utility/tutorial
-- LL
Le 1 février 2011, Lucas Levrel a écrit :
Je cherche donc un moyen d'attacher tous les processus à un CPU donné le
temps de faire mes mesures, puis de les « libérer ».
Ne cherchez plus, j'ai trouvé : cset fait exactement ça (et même plus).
https://rt.wiki.kernel.org/index.php/Cpuset_management_utility/tutorial