
Desafortunadamente, parece que el indicador cpufreq solo muestra un ícono que indica la frecuencia proporcional en lugar del número preciso que me gustaría ver.
¿Existe algún indicador que muestre la frecuencia real de la CPU en tiempo real? ¿Quizás para cada núcleo?
Idealmente me gustaría ver tanto la frecuencia como el uso por núcleo, pero las respuestas a esta pregunta:
¿Existe un indicador de aplicación para el uso de CPU por núcleo?
sugieren que el uso por núcleo está fuera de alcance en este momento.
Respuesta1
Puede utilizar Indicator-sysmonitor para dicho indicador personalizado.
Instalar
indicator-sysmonitor
sudo add-apt-repository ppa:fossfreedom/indicator-sysmonitor sudo apt-get update sudo apt-get install indicator-sysmonitor
Ejecutarlo
- Haga clic en su indicador → Preferencias → pestaña Avanzado
Haga clic en Nuevo:
Sensor:
freq
Comando:awk '/cpu MHz/{printf(" %d",$4)}' /proc/cpuinfo
- Cambie el nuevo sensor a la etiqueta:
cpu: {cpu} mem: {mem} freq:{freq}
. Ahorrar
Referencias:
Respuesta2
Puede utilizar indicator-multiload
para configurar un indicador personalizado:
Instalar
indicator-sysmonitor
:sudo apt-get install indicator-multiload
Ejecutarlo
Haga clic en suIndicador→Preferencias→Elementos indicadores
Hacer clicAgregare ingresa:
freq $(frequency(cpufreq.cur1))
Muévelo hasta lo más alto.
Añade otro
freq
sin valor.Cerrar haciendo clicCerca
Respuesta3
Seguí este tutorial sobre la creación de subprogramas de indicadores:
http://conjurecode.com/create-indicator-applet-for-ubuntu-unity-with-python/
Y se le ocurrió el siguiente guión. Muestra un indicador con la frecuencia de cada núcleo según la salida de cpuinfo. No es muy robusto pero parece hacer el trabajo.
#!/usr/bin/env python
import sys
import gtk
import appindicator
import random
import time
import os
import re
PING_FREQUENCY_MS = 1000
INDICATOR_NAME = "cpu-indicator"
ICON_PATH = "/usr/share/unity/icons/panel-shadow.png"
APP_CATHEGORY = appindicator.CATEGORY_APPLICATION_STATUS
def cpu_freqs_string():
return os.popen("cat /proc/cpuinfo | grep MHz").read()
def extract_freqs(s):
return re.sub("[^(0-9|\t|.)]", "", s).strip().split("\t")
def cpu_freqs():
freqs_only = extract_freqs(cpu_freqs_string())
freqs_in_ghz = [float(x) / 1000 for x in freqs_only if x != ""]
return " | ".join(["%.1f" % freq for freq in freqs_in_ghz])
class CpuIndicator:
def __init__(self):
self.ind = appindicator.Indicator(INDICATOR_NAME, ICON_PATH, APP_CATHEGORY)
self.ind.set_status(appindicator.STATUS_ACTIVE)
self.ind.set_menu(gtk.Menu())
def main(self):
gtk.timeout_add(PING_FREQUENCY_MS, self.update_value)
gtk.main()
def update_value(self):
self.ind.set_label(cpu_freqs())
return True
def quit(self, widget):
sys.exit(0)
indicator = CpuIndicator()
indicator.main()
Por cierto, aquí se puede encontrar una idea para ampliar el indicador de carga múltiple para mostrar el uso por núcleo:
https://bugs.launchpad.net/ubuntu/+source/indicator-multiload/+bug/1173972
No implementado 2 años después de la solicitud, pero tal vez algún día...