Sí, hay una manera.
Gadget de energía Intel tiene una idea bastante oscura PowerLog
utilidad de línea de comandos. Esto le permite acceder a todos los datos de la interfaz gráfica de usuario, pero no requiere que escriba su propio código. Después de instalar Intel Power Gadget, la herramienta se encuentra en /Applications/Intel Power Gadget/PowerLog
.
Parece que está pensado para generar archivos csv para su posterior análisis, PowerLog.csv
por defecto, pero con el -verbose
puede obtener los datos directamente en el shell.
Así que para obtener su frecuencia actual, esto debería funcionar:
$ /Applications/Intel\ Power\ Gadget/PowerLog -duration 1 -verbose | grep "IA frequency:" | head -1
IA frequency: 1655 (1200..2600) MHz, request: 1650 (1300..2600) MHz
Pero también, como han dicho otros, buscar una sola frecuencia es simplificar demasiado las cosas. Si miras la salida completa de una muestra puedes ver la frecuencia de cada núcleo
$ /Applications/Intel\ Power\ Gadget/PowerLog -resolution 1000 -duration 1 -verbose
Num Packages: 1
Using Package: 0
Num Cores: 16
GT Available? 1
IA Energy Available? 1
DRAM Energy Available? 1
Max Temperature: 100 degrees Celcius
IA Base Frequency: 2400 MHz
IA Max Frequency: 5000 MHz
TDP: 45.00 W
package temperature: 60.00 degrees Celsius
--------------------------
GT frequency: 0 MHz
GT frequency request: 0 MHz
package temperature: 57.00 degrees Celsius
IA temperature: 56.69 (55..59) degrees Celsius
IA metrics per-core:
core 0 request: 2091 MHz temperature: 57 degrees Celcius
core 1 request: 1767 MHz temperature: 58 degrees Celcius
core 2 request: 1856 MHz temperature: 57 degrees Celcius
core 3 request: 2000 MHz temperature: 57 degrees Celcius
core 4 request: 1969 MHz temperature: 56 degrees Celcius
core 5 request: 2000 MHz temperature: 56 degrees Celcius
core 6 request: 1976 MHz temperature: 55 degrees Celcius
core 7
core 8 request: 1825 MHz temperature: 55 degrees Celcius
core 9
core 10 request: 1650 MHz temperature: 56 degrees Celcius
core 11
core 12 request: 1825 MHz temperature: 56 degrees Celcius
core 13 request: 2000 MHz temperature: 56 degrees Celcius
core 14 request: 1650 MHz temperature: 56 degrees Celcius
core 15
--------------------------
IA frequency: 2070 (1200..3600) MHz, request: 2266 (1300..5000) MHz
GT frequency: 0 MHz
GT frequency request: 0 MHz
package power: 5.46 Watts, energy: 5.47 Joules
IA power: 2.84 Watts, energy: 2.85 Joules
DRAM power: 1.34 Watts, energy: 1.34 Joules
package temperature: 57.00 degrees Celsius
IA temperature: 56.74 (54..60) degrees Celsius
IA utilization: 0.78 %
IA metrics per-core:
core 0 frequency: 1836 MHz request: 1915 MHz temperature: 57 degrees Celcius utilization: 4.56 %
core 1 frequency: 1805 MHz request: 1650 MHz temperature: 57 degrees Celcius utilization: 0.04 %
core 2 frequency: 2380 MHz request: 2763 MHz temperature: 57 degrees Celcius utilization: 4.76 %
core 3 frequency: 1930 MHz request: 1300 MHz temperature: 57 degrees Celcius utilization: 0.02 %
core 4 frequency: 2036 MHz request: 2127 MHz temperature: 55 degrees Celcius utilization: 1.24 %
core 5 frequency: 1902 MHz request: 2550 MHz temperature: 55 degrees Celcius utilization: 0.04 %
core 6 frequency: 1951 MHz request: 2075 MHz temperature: 55 degrees Celcius utilization: 0.84 %
core 7 frequency: 1691 MHz request: 2000 MHz temperature: 55 degrees Celcius utilization: 0.02 %
core 8 frequency: 1891 MHz request: 1991 MHz temperature: 55 degrees Celcius utilization: 0.46 %
core 9
core 10 frequency: 1592 MHz request: 1620 MHz temperature: 55 degrees Celcius utilization: 0.21 %
core 11
core 12 frequency: 1859 MHz request: 1860 MHz temperature: 56 degrees Celcius utilization: 0.11 %
core 13 frequency: 2214 MHz request: 1300 MHz temperature: 56 degrees Celcius utilization: 0.02 %
core 14 frequency: 1684 MHz request: 1580 MHz temperature: 55 degrees Celcius utilization: 0.11 %
core 15
Done
0 votos
Las respuestas detrás del enlace de StackOverflow contienen una respuesta basada en el Terminal. ¿Puede describir cómo esto no funciona para usted?
0 votos
Todas las soluciones en SO sólo muestran la frecuencia nominal de la CPU, no cambia según la frecuencia real, y no se correlaciona con Power Gadget
0 votos
Relacionado con esto: stackoverflow.com/a/8353086/4703819
0 votos
Por lo que tengo entendido, la "frecuencia" se calcula en función de una serie de factores. No hay ninguna "sonda" conectada a la CPU para medir en tiempo real cuál es la frecuencia real.
0 votos
La frecuencia es la velocidad del reloj del procesador. Está determinada por el hardware o por el sistema operativo. En Linux puedes ver y controlar la frecuencia de la CPU.
1 votos
Si funciona en Linux, ¿sería una opción mirar el código fuente allí?
0 votos
Sólo por curiosidad... ¿Lo principal aquí es que (1) no quieres usar Intel Power Gadget o (2) quieres hacer esto a través de la terminal?