Je cours avec Ubuntu 14.04 sur un serveur Power8.
Existe-t-il un moyen de déterminer la vitesse d'exécution des processeurs?
Comment activer les outils fournis avec powerpc-utils et cpufreq?
ajoutée....
ppc64_cpu
rapports
# ppc64_cpu --frequency
min: 3.693 GHz (cpu 159)
max: 3.693 GHz (cpu 1)
avg: 3.693 GHz
la sortie de 'cpufreq-info' montre (exemple pour un cœur):
analyzing CPU 159:
driver: powernv-cpufreq
CPUs which run at the same hardware frequency: 152 153 154 155 156 157 158 159
CPUs which need to have their frequency coordinated by software: 152 153 154 155 156 157 158 159
maximum transition latency: 4294.55 ms.
hardware limits: 2.06 GHz - 3.69 GHz
available frequency steps: 3.69 GHz <clipped>, 2.09 GHz, 2.06 GHz
available cpufreq governors: conservative, userspace, powersave, ondemand, performance
current policy: frequency should be within 2.06 GHz and 3.69 GHz.
The governor "ondemand" may decide which speed to use
within this range.
current CPU frequency is 2.06 GHz (asserted by call to hardware).
cpufreq stats: 3.69 GHz:0.66%, 3.66 GHz:0.00%, 3.62 GHz:0.00% <clipped> 2.09 GHz:0.00%, 2.06 GHz:99.34% (5)
Ici, nous pouvons voir que le CPU est toujours cadencé à ~ 2 GHz et que le gouverneur est "à la demande", donc rien n'a changé. Cette installation Ubuntu est entièrement à jour
Oui, sur Power/proc/cpuinfo affiche la vitesse d'horloge statique "nominale". Le matériel fournit également des étapes de fréquence supérieures à la valeur nominale que les gouverneurs cpufreq incluront par défaut lors de l'exécution en mode firmware OPAL.
La raison pour laquelle `` ppc64_cpu --frequency '' affiche une sortie différente est parce que cette commande lit certains compteurs matériels et génère une activité du processeur pour mesurer la fréquence, produisant donc généralement la fréquence maximale du système puisque l'utilisation du processeur est augmentée lors de l'exécution de la commande.
La méthode cpufreq affiche la fréquence réelle à ce moment, sans augmenter l'utilisation du processeur. Donc, si le système est par ailleurs inactif, cpufreq-info affichera la fréquence de mise à l'échelle la plus basse. Il s'agit de la méthode recommandée pour vérifier la fréquence de l'hôte lors de l'exécution KVM invités car le PMU est partagé entre l'hôte/les invités et la méthode 'ppc64_cpu' utilise des compteurs matériels PMU pour mesurer la fréquence .
Sur les serveurs POWER, /proc/cpuinfo
est la définition statique de la vitesse d'horloge. Les processeurs peuvent être synchronisés avec ppc64_cpu
commande.
J'ai entendu qu'il y a des différences entre ce que ppc64_cpu --frequency
montre et ce que cpufreq
montre.
Nous devrons demander plus de détails ici.
ppc64_cpu --frequency
sera inexact si un ou plusieurs invités sont en cours d'exécution.
Cela signifie que son utilisation pour mesurer la fréquence sur un hôte avec un invité en cours d'exécution, ou à partir d'un invité, produira des nombres inférieurs à la fréquence réelle.
La raison en est que ppc64_cpu --frequency
exécute un processus sur tous les threads de CPU en ligne pendant une durée fixe et compte les cycles de CPU pendant cette période à l'aide de perf. Le sous-système perf lui-même utilise le matériel PMU dans le CPU. Lorsqu'un invité est planifié pour s'exécuter, il est donné la propriété de la PMU, donc aucun cycle ne sera compté du point de vue de l'hôte lorsque l'invité est en cours d'exécution. Cependant, l'horloge murale fonctionne toujours. Cela signifie que vous comptez le temps sans compter les cycles, et donc votre résultat de fréquence plus faible que prévu.
Cela est vrai au moins pour powerpc-utils 1.2.22. Ce n'est pas une garantie que cela changera à l'avenir, mais gardez-le à l'esprit au cas où vous liriez cette réponse plusieurs mois ou années plus tard.
Les deux outils que j'utilise sont les performances HMC ou PowerVP. PowerVP vous fournira en fait toutes sortes de bonnes informations et est facile à utiliser. La console HMC dispose désormais d'une application iPhone géniale qui fournit de bonnes données de performances de base lorsque vous n'êtes pas au bureau.