Pourquoi mon Raspberry Pi n'overclocke-t-il pas?

22

J'ai édité le fichier /boot/config.txt pour augmenter la vitesse du processeur à 800 MHz.

dmesg comprend la ligne suivante

bcm2835-cpufreq: Freq 800000->700000 (min=700000 max=800000 target=700000 request=700000)

Effectivement, mon processeur ne fonctionne qu'à 700 MHz.

Pourquoi mon Raspberry Pi n'overclocke-t-il pas?

J'utilise Occidentalis 0.2.

John Smith
la source
Le mode Turbo n'overclockera le CPU qu'à 95% de charge. Cependant, vous pouvez modifier ce seuil sans forcer le mode Turbo à être activé en permanence. Voir cette question connexe: raspberrypi.stackexchange.com/q/5477/6516
Enrico Campidoglio

Réponses:

28

Il y a eu récemment un changement dans le firmware / noyau, qui a permis la mise à l'échelle de la fréquence CPU du noyau. Maintenant, vous ne définissez pas la fréquence statique du processeur dans config.txt, vous définissez la fréquence maximale. Si votre système est en charge, il changera la fréquence du processeur à une valeur plus élevée (il est appelé turbo mode, vous pouvez voir le maxparamètre dans votre ligne de journal) mais si votre système est inactif, il abaissera la fréquence à la valeur minimale (par défaut, c'est Valeurs par défaut du RaspberryPi - 700 MHz pour ARM, 250 MHz pour le cœur, 400 MHz pour SDRAM). Il réduira également la tension si vous utilisez des paramètres de surtension. Par défaut ondemand, le régulateur de fréquence est utilisé.

Vous pouvez modifier les valeurs par défaut (utilisé en cas d' inactivité) avec arm_freq_min, gpu_freq_min, core_freq_min, sdram_freq_minet over_voltage_minoptions config.txt. Vous pouvez également désactiver ce comportement et revenir à ce qu'il fonctionnait avant l'introduction de cette modification dans le micrologiciel force_turbo=1dans votre fichier config.txt. De cette façon, la mise à l'échelle de la fréquence du processeur sera désactivée.

Il y a également deux autres modifications lorsque force_turbo=0(qui est la valeur par défaut par défaut):

  • Les fréquences h264 / v3d / isp ne sont pas mises à l'échelle, donc si vous souhaitez les overclocker, vous devez également force_turbo=1
  • la valeur maximale de surtension est de 6 (1,35 V), au lieu de 8

Notez également que vous pouvez modifier dynamiquement une partie de la configuration de fréquence (au moins pour ARM) à l'aide de sysfs. Jetez un œil à:

/sys/devices/system/cpu/cpu0/cpufreq/

Vous pouvez lire ce changement ici .

Krzysztof Adamski
la source
C'est l'une des meilleures réponses et démontre vraiment pourquoi Raspberry Pi.SE est important.
Alex Chamberlain
1
Il convient de noter que la combinaison de la désactivation du mode Turbo force_turbo=1 et de l' activation de la surtension annulera la garantie .
Enrico Campidoglio
L'activation de force_turbo désactive-t-elle également l'ajustement dynamique de la fréquence d'horloge par le processeur, car j'ai constaté que mon processeur ne fonctionne pas de manière cohérente avec ce que je l'ai configuré pour fonctionner (1 GHz) dans le config.txt mais s'exécute parfois à 700 MHz après un certain temps ou après le démarrage ?
user123456098
4

Ajoutez force_turbo=1votre config.txt.

Adibek
la source
8
Salut Adibek, bienvenue sur RaspberryPi.SE. Les meilleures réponses contiennent généralement des citations, des références ou des informations générales. Il s'agit d'aider l'utilisateur à comprendre son problème, plutôt que de simplement le résoudre.
Jivings
Je suis d'accord avec @Jivings, certaines références ou informations de base seraient utiles pour les futurs visiteurs voyant cette question.
hifkanotiks
2

pour moi, c'était le régulateur d'échelle qui empêchait l'overclocking. lisez juste la bonne réponse à cette question ici: Comment changer le gouverneur par défaut?

maintenant ma framboise fonctionne à 1150 MHz

syss
la source
1
Un gouverneur de mise à l'échelle n'empêchera pas l'overclocking. Il redimensionnera simplement la fréquence du processeur lorsqu'il n'est pas réellement utilisé. Dès qu'il est nécessaire, il augmentera la fréquence. La fréquence la plus élevée possible est indiquée en /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq.
goldilocks
2
dans mon cas, le gouverneur a été réglé sur "powersave". J'avais 1000 MHz comme fréquence CPU maximale, mais je n'ai jamais atteint cette fréquence comme fréquence courante. après avoir réglé le gouverneur sur "ondemand" ou "performance", j'ai pu obtenir des fréquences de processeur plus élevées
syss
1
Vous avez raison, la valeur par défaut est PowerSave. Je suppose que c'est parce que sans overclocking, cela n'a pas d'importance - les fréquences min et max sont les mêmes (700000). Sur le Pi 2 je pense qu'il y a une gamme possible (600000 et 900000).
goldilocks