(Courriels de diversion: <censuraient@incitais-castratrices.com> <forgeaient@appareillais-scenario.com> <unanimement@friperies-designerions.com> <vinasses@reoperons-clarifies.com> <poinconnerions@six-helas.com> <proviennes@parquais-insonorisez.com> <racontees@fournisses-vaquent.com> <narines@escamoteras-habilitees.com> <rogneriez@deconseillee-expertisee.com> <negociants@piquetes-deliter.com> )


>>>>> "bp" == blaise  <bpicinbono@worldonline.fr> writes:
  bp> Lorsque j'utilise qemu, j'ai trés souvent une charge cpu autour
  bp> de 99% dans le top, et la température qui monte avec. J'avais
  bp> déjà constaté ça avec crossover et vmware. J'aimerai bien
  bp> pouvoir limiter qemu à 50 ou 70% pour ménager la bécanne. Est-ce
  bp> possible, et si oui, comment ?

  ton objectif peut paraître basique, mais il n'existe pas (à ma
  connaissance) de moyen simple de l'atteindre. Le scheduler standard
  de Linux est bâti autour du concept de priorité pour gérer
  l'utilisation de la CPU, et non autour de limites fixes de type
  «donne lui 30% du temps CPU». (Ces priorités peuvent être modifiées
  à l'aide des commandes "nice" et "renice"). Cette simplicité de
  conception du scheduler standard lui permet d'être efficace, mais ne
  répond pas à tous les besoins des utilisateurs.

  Comme pistes de solution, je vois les possibilités suivantes:

* utiliser la commande "cpulimit", qui permet de limiter un
  processus à un certain pourcentage d'utilisation de la CPU.
  Exemple:

     % cpulimit -p 666 -l 30

  permet au programme dont le pid est 666 d'utiliser 30% de la CPU.
  Malheureusement, cette commande n'est pas très intelligente, et ne
  gère pas les process group (si le programme fork, le fils est libéré
  des contraintes appliquées à son père -- vision très libérale (peu
  française) des liens de paternité).
  
     http://marlon80.interfree.it/cpulimit/
  

* compiler un noyau avec le patch RLIMIT_RT_CPU de Ingo Molnar, qui
  rend le noyau capable de gérer la contrainte souhaitée (via le
  mécanisme noyau des rlimits)

     http://people.redhat.com/mingo/rt-limit-patches/


* pour «ménager ta bécanne», il est possible d'utiliser un régulateur
  bien plus bourrin, qui lui interdit tout simplement de passer en
  sixième vitesse: j'imagine que la machine en question est capable de
  réguler sa vitesse CPU avec un mécanisme comme l'ACPI ou l'APM (cas
  de la majorité des machines récentes, même celles de bureau), et que
  ton noyau est compilé avec les options de gestion adéquates. Il
  suffit alors de dire en tant que root

     # echo 2 > /sys/module/processor/parameters/max_cstate

  où le chiffre magique est soigneusement sélectionné en fonction
  des différents états «cstate» gérées par ton CPU (regarder la liste
  dans /proc/acpi/process/CPU0/power et lire de la documentation du
  ACPI).
  
-- 
On ne connaît les choses que l'on apprivoise, dit le renard. Les
hommes n'ont plus le temps de rien connaître. Ils achètent des choses
toutes faites chez les marchands. Mais comme il n'existe point de
marchands d'amis, les hommes n'ont plus d'amis. Si tu veux un ami,
apprivoise-moi!                                   -- Le Petit Prince

--------------------------------------------------------------------
Les listes de diffusion occultes: <URL:http://www.CULTe.org/listes/>