cómo comprobar los detalles del procesador y CPU en Linux – ejemplos de comandos

0 Comments

detalles del procesador/Cpu

Los detalles sobre el procesador del que hablaremos incluyen, número de núcleos, disponibilidad de hyper threading, arquitectura, tamaño de caché, etc.

encontrar estos detalles sobre la cpu en su sistema puede ser un poco difícil debido a la forma en que los diferentes comandos los comprueban.

los comandos que vamos a usar incluyen lscpu,/proc / cpuinfo y lstopo (hwloc).,
Estos comandos muestran información detallada sobre los núcleos de cpu / unidades de procesamiento.

los ejemplos siguientes explicarían cómo interpretar la salida de estos comandos.

1. Proveedor y modelo del procesador

para encontrar el nombre del proveedor y modelo del procesador, busque el archivo /proc/cpuinfo con el comando grep.

$ cat /proc/cpuinfo | grep vendor | uniqvendor_id : GenuineIntel

es un procesador Intel. A continuación, encuentre el nombre del modelo que se puede usar para buscar las especificaciones exactas en línea en el sitio web de Intel.

$ cat /proc/cpuinfo | grep "model name" | uniqmodel name : Intel(R) Core(TM)2 Quad CPU Q8400 @ 2.66GHz

es un procesador «Core 2 Quad Q8400».

2., Arquitectura

los comandos lscpu informan de la arquitectura.

$ lscpuArchitecture: x86_64CPU op-mode(s): 32-bit, 64-bitByte Order: Little Endian.....

La arquitectura x86_64 que es de 64 bits.

3. Frecuencia

la frecuencia/velocidad del procesador es reportada por lscpu y / proc / cpuinfo.

$ lscpu | grep -i mhzCPU MHz: 1998.000
$ cat /proc/cpuinfo | grep -i mhz | uniqcpu MHz : 1998.000
The frequency reported might be lower than the actual frequency specified for the processor because most modern processors operate at lower frequencies to save power. Under load condition they would switch to higher frequency.

el cambio de frecuencia se puede ver monitoreando la salida de/proc / cpuinfo usando watch.,

$ watch -n 0.1 "cat /proc/cpuinfo | grep -i mhz"

ejecute el comando anterior en un terminal y mientras se está ejecutando, inicie alguna tarea intensiva de cpu en paralelo y la frecuencia aumentaría.

Every 0.1s: cat /proc/cpuinfo | grep -i mhz Sun Jun 29 15:28:38 2014cpu MHz : 2664.000cpu MHz : 2664.000cpu MHz : 2664.000cpu MHz : 2664.000

4. Número de núcleos

cada núcleo en el procesador es una cpu o unidad de procesamiento independiente real. Múltiples núcleos permiten al procesador ejecutar múltiples instrucciones de programa en paralelo, lo que aumenta la velocidad de procesamiento.

el comando lscpu indica los «núcleos por socket».

así que en este caso el número de núcleos en el procesador es 4.,
el archivo/proc / cpuinfo también indica el número de núcleos, pero puede ser un poco complicado y confuso.

simplemente contando el número de procesadores puede dar números incorrectos.

$ cat /proc/cpuinfo | grep "processor"

en el caso de procesadores hyper threaded, el número de procesadores que ve el sistema operativo es el doble del número de núcleos.

sin embargo/proc / cpuinfo tiene un campo llamado «core id» que es un id único para cada núcleo en un solo procesador., Contar el ID del núcleo daría una indicación clara del número de núcleos reales en el procesador

$ cat /proc/cpuinfo | grep -i "core id"core id : 0core id : 2core id : 1core id : 3

múltiples procesadores

raro, pero en caso de que esté en un sistema que tiene múltiples procesadores físicos (sí, significa 2 o más procesadores instalados en la placa base), entonces los resultados de/proc / cpuinfo serían diferentes. En caso de múltiples procesadores, el «ID físico» indicaría múltiples valores.

$ cat /proc/cpuinfo | grep -i "physical id" | uniqphysical id : 0

Si hay más de 1 identificadores físicos, entonces hay múltiples procesadores físicos en el sistema., Y tienes que contar los núcleos de cada procesador por separado.

5. Hyper threading

Hyper threading es una tecnología Intel que permite que los núcleos individuales funcionen como 2 unidades de procesamiento lógico. Esto, en cierto modo, aumenta la potencia de procesamiento de cada núcleo de una manera limitada.

para comprobar si el procesador tiene hyper-threading, se deben comparar 2 valores diferentes. Primero es el número de núcleos reales, y segundo es el número de unidades de procesamiento lógicas.

si el número de núcleos es igual al número de unidades de procesamiento visto por el sistema operativo, entonces NO hay hyper threading., De lo contrario, si el número de unidades de procesamiento es mayor/el doble del número de núcleos, entonces sí hyper threading.

number of processing units = number of cores number of processing units = number of cores * 2 

tome este ejemplo de un procesador Core 2 Quad Q8400

El número de procesadores como se muestra en /proc/cpuinfo es 4

$ cat /proc/cpuinfo | grep processorprocessor : 0processor : 1processor : 2processor : 3

número de «núcleos de cpu» = 4, así como «hermanos» = 4 y único «core id» = 4

por lo tanto, número total de unidades de procesamiento = número de núcleos reales. Así que no hay hyper threading en este procesador, y lo mismo se puede confirmar a partir de las especificaciones del procesador en el Sitio Web de Intel.,

procesador Hyper-threaded

en caso de estar presente hyper threading, la salida de/proc / cpuinfo o lscpu sería diferente.

tenga en cuenta el «hilo(s) por núcleo: 2» que indican que hay 2 hilos por núcleo, con un total de 4 núcleos. Así que el número de unidades de procesamiento visto por el sistema operativo es 8.

ahora echemos un vistazo a la salida de /proc/cpuinfo.

los «núcleos de cpu» = 4 y hermanos = 8, lo que significa que hay 4 núcleos y 2 hyperthreads por núcleo. El número de procesadores indicado por /proc/cpuinfo también sería de 8.,

The HTT flag in dmidecode output and ht flag in /proc/cpuinfo flags might not correctly report hyper threading.

para el procesador Core2Quad Q8400, tanto dmidecode como/proc / cpuinfo muestran el indicador hyperthreading habilitado, a pesar de que hyper threading no está disponible en el procesador.

hwloc / lstopo

hwloc (Portable hardware locality) es una pequeña utilidad que informa la estructura del procesador en un diagrama visual ordenado. El diagrama muestra el número de núcleos, hyperthreads y tamaño de caché. Un solo diagrama lo dice todo.,575b2e2d»>

el diagrama anterior muestra claramente-

caché L2 Total – 4096 KB – 4MB
núcleos totales – 4
Unidad de procesamiento por núcleo – 1

procesador Hiper-threaded
para un procesador hyperthreaded, el diagrama de salida hwloc podría verse así

el diagrama indica

caché L3 total – 8MB
núcleos totales – 4
unidades de procesamiento por núcleo – 2

conclusión

para obtener más información sobre los comandos para verificar la información de la CPU en Linux, consulte esta publicación:
9 comandos para verificar la información de la CPU en Linux


Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *