2 votes

À quelle vitesse les régulateurs de l'unité centrale peuvent-ils modifier leur fréquence ?

Toutes les descriptions de régulateurs CPU que j'ai pu trouver utilisent des mots subjectifs tels que lent et rapide pour expliquer comment la fréquence change dans certaines conditions.

Quelles sont les valeurs typiques ici, s'agit-il de plus ou moins 1ms ?

Je suis curieux de savoir a) à quelle vitesse le matériel peut passer de min à max et vice versa et b) quel serait un nombre raisonnablement conservateur comme dans un refroidissement à la demande ?

Existe-t-il des valeurs typiques pour une ROM open source ou autre, dans tel ou tel appareil, disponibles partout ? Ou, à défaut, est-il possible de mesurer mon propre appareil en bricolant avec adb/ndk/sdk ?

0voto

Fabio Points 121

C'est ce que j'ai obtenu sur mon S4 international avec CyanogenMod Rom 4.4.4 nightly build du 2015-06-14 avec un gouverneur de cpu à la demande.

Pour ce test, j'ai ouvert l'application Coursera et j'ai cherché une section. C'est donc une action typique en une touche que vous allez voir ici.

Alors j'ai fait un shell adb et j'ai commencé à bricoler. Je n'ai rien trouvé d'utile dans /proc/cpuinfo, alors je me suis dirigé vers dmesg.

Remarque : pour exécuter dmesg, vous devez être Root.

Note 2 : dmesg -c efface le tampon, donc vous pouvez être sûr que vous ne verrez pas la même chose deux fois. Cela aide parce que c'est un peu déroutant parce que ça monte et ça descend tout le temps.

root@ja3g:/proc # dmesg -c | grep -i clock                                                                                                                                                           
<6>[74960.230777] B0  23943 PVR_K: SGX change clock [177] Mhz -> [266] MHz req [266] MHz / M[800] / B[0]
<6>[74960.330888] B0  23943 PVR_K: SGX change clock [266] Mhz -> [350] MHz req [350] MHz / M[800] / B[0]
<6>[74960.431147] L0  23943 PVR_K: SGX change clock [350] Mhz -> [480] MHz req [480] MHz / M[800] / B[0]
<6>[74960.630002] L0  23943 PVR_K: SGX change clock [480] Mhz -> [350] MHz req [350] MHz / M[800] / B[0]
<6>[74960.930147] B0  23943 PVR_K: SGX change clock [350] Mhz -> [266] MHz req [266] MHz / M[800] / B[0]
<6>[74961.229909] B0  23943 PVR_K: SGX change clock [266] Mhz -> [177] MHz req [177] MHz / M[800] / B[0]
<6>[74962.330790] L0  23943 PVR_K: SGX change clock [177] Mhz -> [266] MHz req [266] MHz / M[800] / B[0]
<6>[74962.734868] L0  23943 PVR_K: SGX change clock [266] Mhz -> [177] MHz req [177] MHz / M[800] / B[0]

Mon interprétation des données est la suivante : J'ai touché l'écran et il a commencé à faire une transition environ 74960.230777 secondes après le démarrage, quand le gouverneur s'est mis en marche. Il est passé de la fréquence minimale (177) à 266 puis 350 et enfin 480 Mhz à 74960.431147 secondes, c'est-à-dire environ 200 ms après le début de l'accélération.

Puis il a commencé à ralentir sur 74960.630002, atteignant la vitesse minimale sur 74961.229909 (600 ms plus tard). Je n'ai aucune idée de ce qui s'est passé après cela, probablement qu'il était encore en train de construire quelque chose sur l'écran et qu'il a encore accéléré et ralenti.

Je ne sais même pas si cela a un sens, j'ai 4 processeurs lents et 4 autres processeurs rapides et gourmands, je devrais peut-être exécuter des tâches lourdes pour être plus sûr de ce qui se passe.

Il est cependant amusant de constater que même les messages texte non lus entrants de Hangout font un petit saut de 177 à 266 à 177 MHz.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X