Nous sommes actuellement le Ven 27 Jan 2012, 20:45
Messages depuis 12 | 24 | 36 heures.




 [ 4 messages ]  Publier une réponse
 Sujet du message: [ cpufreq ] script modifié pour initialiser tout le monde
MessagePublié: Ven 23 Fév 2007, 00:14 
Maître du Kyudo

Inscrit le: Lun 18 Sep 2006, 15:21
Messages: 405
Localisation: france, yvelines 78
j'ai modifié /etc/rc.d/cpufreq pour qu'il initialise tout les processeurs au demarrage (sinon il fait que le premier)
j'avait fait une feature request et du coup je vais y mettre un lien vers ici parceque le texte du script ressemble plus a rien sans quoi...

Code:
#!/bin/bash

. /etc/rc.conf
. /etc/rc.d/functions

# source application-specific settings
[ -f /etc/conf.d/cpufreq ] && . /etc/conf.d/cpufreq

case "$1" in
  start)
    stat_busy "Setting cpufreq governing rules"

   params=""
   if [ -n $governor ]; then
      mod="cpufreq_$governor"
      modprobe $mod > /dev/null 2>&1
      params="-g $governor"
      if [ $? -eq 0 ]; then
#################################################
         #find how many processors have to be set
         #where
         cpu_location='/sys/devices/system/cpu/'
         #count in a temp file (this help me to correctly handle `ls` output)
         `touch temp_cpu_$$`
         `ls $cpu_location > temp_cpu_$$`
         #list just the directories in $cpu_tab[]
         declare -i cpu_index
         cpu_index=0
         while read temp_cpu_line;
            do
            [ -d "$cpu_location$temp_cpu_line" ] && cpu_tab[$cpu_index]=$temp_cpu_line && cpu_index+=1
         done < temp_cpu_$$
         #kill the temp file
         rm temp_cpu_$$
#################################################
         if [ "$min_freq" != "" ]; then
            params="$params -d $min_freq"
         fi
         if [ "$max_freq" != "" ]; then
            params="$params -u $max_freq"
         fi
      else
         stat_busy "    Cannot load governor module '$governor'"
         stat_fail
         exit
      fi
   fi

   if [ "$params" != "" ]; then
#################################################
      #set for each cpu in $cpu_tab[]
      cpu_index=0
      for a_cpu in "${cpu_tab[@]}"
         do
            `cpufreq-set --cpu $cpu_index $params`
            cpu_index+=1
      done
#################################################
      #cpufreq-set $params
      stat_done
   else
      stat_busy "    Invalid configuration in /etc/conf.d/cpufreq"
      stat_fail
   fi
    ;;
  stop)
    # nothing to do
    ;;
  restart)
    $0 start
    ;;
  set)
    # TODO: make callable... "cpufreq set 800MHz"
    ;;
  *)
    echo "usage: $0 {start|stop|restart}" 
esac
exit 0


c'est beau, ca brille, adieu cpufreqd


Haut
 Profil  
 
 Sujet du message:
MessagePublié: Ven 23 Fév 2007, 16:39 
Maître du Kyudo
Avatar de l’utilisateur

Inscrit le: Ven 11 Août 2006, 16:05
Messages: 1629
Localisation: Collonges (01) France
Merci pour l'astuce !

_________________
Plus ça rate, plus ça a de chance de réussir. En somme, un succès n'est qu'une erreur qui a finit par réussir (même par erreur). Ne déséspérez donc pas et perseverez. Utilisez La Rache™
Patientia quod lard quod barrus planto diligo ut licentia
—¤÷(`[¤*Powered By *¤]´)÷¤—
Archlinux ~ Fvwm ~ Irssi ~ URxvt


Haut
 Profil  
 
 Sujet du message:
MessagePublié: Ven 23 Fév 2007, 18:16 
Maître du Kyudo
Avatar de l’utilisateur

Inscrit le: Mer 06 Sep 2006, 20:31
Messages: 963
Localisation: Chez MôA
Citer:
j'ai modifié /etc/rc.d/cpufreq pour qu'il initialise tout les processeurs au demarrage (sinon il fait que le premier)

Euh, j'ai surement rien compris mais ca n'est utile que si on a plusieurs processeurs ? Si tu pouvais expliquer :p

_________________
Le monde pleure, mais gardez le sourire ...
http://www.toile-libre.org


Haut
 Profil  
 
 Sujet du message:
MessagePublié: Ven 23 Fév 2007, 22:07 
Maître du Kyudo

Inscrit le: Lun 18 Sep 2006, 15:21
Messages: 405
Localisation: france, yvelines 78
j'avait juste besoin d'un endroit pour coller ce texte sans déformation de mises en page et c'est tombé là.
oui ca ne concerne que le cas ou tu as plusieurs processeurs ou, dans mon cas, un seul qui se fait passer pour deux (P4M HyperThreading) et je suppose tout les doubles coeurs et assimilés.
le cpufreqd actuel gère tout le monde c'est juste cpufreq qui ne prenait pas tout le monde, ce n'est pas très utile comme modif c'est juste que là j'étais en pleine guerre de processeur et que pour faire des essais ca (me) manquais.
voila :)


Haut
 Profil  
 
Afficher les messages publiés depuis:  Trier par  
 [ 4 messages ]  Répondre au sujet


Vous ne pouvez pas publier de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum

Rechercher pour:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Traduction réalisée par Maël Soucaze © 2010 phpBB.fr
phpBB SEO


© 2009-2010 Archlinux.fr ~ Communauté Francophone Arch Linux