Journal CPUFREQ et kernel 2.6

Posté par  .
Étiquettes : aucune
0
3
fév.
2004
Bonne nouvelle, il est maintenant possible de regler la vitesse a la vollée sur les Intel Pentium 4 !

Il faut activer dans le noyau :
CPUfreq + governor userspace, powersave, performance

governor userspace : tu ajustes toi-meme la vitesse de ton CPU
governor performance : le noyau optimise la performance tout seul
governor powersave : le noyau optimise la consommation electrique tout seul

Pour le mode userspace:
pour un P4 HyperThreading

echo userspace > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
echo userspace > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
pour voir les frequences supportees.

echo x > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
echo x > /sys/devices/system/cpu/cpu1/cpufreq/scaling_setspeed
pour changer la frequence avec x dans "scaling_available_frequencies"

pour lire la fequence actuelle :
cat /sys/devices/system/cpu/cpu1/cpufreq/scaling_setspeed

ca marche tres bien.
-----------------

Sauf que pour les modes powersave et performance, je ne sais pas ou aller lire la frequence actuelle (ajustée dynamiquement).
j'ai essayé :
cat /sys/devices/system/cpu/cpu1/cpufreq/scaling_setspeed
--> le fichier n'existe plus !
cat/proc/cpuinfo
--> ca bouge pas

Si vous avez des indées, je suis preneur.

Guillaume

liste des CPU supportés :

AMD Mobiles
AMD 64/opteron
Intel SpeedStep
Intel Pentium 4 <--- (ceux de bureaux)
VIA C3
  • # Re: CPUFREQ et kernel 2.6

    Posté par  . Évalué à 2.

    Si c'est comme dans l'acpi classique ca va etre un truc du genre :
    /proc/acpi/processor/CPU0/{limit, info, performance, power, throtling }

    Normalement tu n'es suppose touche qu'a limit et performance. Throtling peut avoir des consequences assez desagreables...(Decalage timer, choc electrique, vidage batterie etc...)


    Kha
    • [^] # Re: CPUFREQ et kernel 2.6

      Posté par  . Évalué à 2.

      pas de frequence en cours dans :
      [root@mdk guiguid]# cat /proc/acpi/processor/CPU1/info
      processor id: 0
      acpi id: 1
      bus mastering control: no
      power management: no
      throttling control: no
      performance management: no
      limit interface: no

      ni
      [root@mdk guiguid]# cat /proc/acpi/processor/CPU1/limit
      <not supported>

      ni
      [root@mdk guiguid]# cat /proc/acpi/processor/CPU1/power
      active state: C1
      default state: C1
      bus master activity: 00000000
      states:
      *C1: promotion[--] demotion[--] latency[000] usage[00000000]
      C2: <not supported>
      C3: <not supported>

      ni
      [root@mdk guiguid]# cat /proc/acpi/processor/CPU1/throttling
      <not supported>

      Pas de trace de frequence en cours .
      Tant pis, merci quand meme.

      Guillaume
      • [^] # Re: CPUFREQ et kernel 2.6

        Posté par  . Évalué à 1.

        Chez moi (P4 m) ca bouge dans /proc/cpuinfo.... Cela voudrais t il dire que ca bouge pas sur les vrais P4 ? Je ne sais pas. Moi je peux descendre a 250Mhz (p4 2.0Ghz) et quand c'est le cas je le vois dans /proc/cpuinfo et ca rame quand meme bien (250Mhz oblige)

        Voila
        a+
      • [^] # Re: CPUFREQ et kernel 2.6

        Posté par  . Évalué à 1.

        Manifestement l'hyperthreafding fiche le bazard. J'imagine que tu n'as pas de CPU0 dans /proc/acpi/processor....
        CPU1 doit etre le pseudo-proc qui permet l'hyperthreading. C'est un peu normal qu'il ne laisse rien passer...

        Kha
  • # Re: CPUFREQ et kernel 2.6

    Posté par  (site web personnel) . Évalué à 2.

    tu rajoute cpufreqd (http://sourceforge.net/projects/cpufreqd(...)) et tu as un
    moyen de faire cela proprement. Il te permet de specifier une frequence de changer les governors et permet meme ajustement automatique de la frequence en fonction de la charge de la machine.

    + pour faire eye-candy y a un gdesklet associé :)

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.