¿Cuantas CPUs tiene mi servidor Linux? ¿Y RAM?

cpuOtro post que tenía en borradores y que he decidido rescatar. Esta vez sobre hardware, con comandos tan básicos como útiles.

¿Cuantas CPUs tiene mi servidor?

En la mayoría de distribuciones Linux, pero concretamente en CentOS, podemos saber cuantas CPUs tiene el servidor, consultando /proc.

[root@myserver]# cat /proc/cpuinfo

El comando anterior nos mostrará la información referente a nuestras CPUs, pero “a simple vista” no sabemos si lo que nos está enseñando es el número de CPUs físicas, el número de nucleos, todo mezclado, etc. Para ello, hemos de prestar atención especialmente a los siguientes campos:

  • Pyhisical id“: id de CPU física. Nos servirá para saber el número de CPUs físicas del servidor. En el ejemplo, vemos 4 CPUs pero en realidad un único “physical id”, lo cual nos indicará que tenemos una única CPU física con 4 núcleos:
[root@myserver]# grep "physical id" /proc/cpuinfo        
physical id     : 0
physical id     : 0
physical id     : 0
physical id     : 0

  • CPU cores” y “Core id“: Nos ayudarán a saber cuantos “cores” tiene cada CPU, y a qué core hace referencia esa sección. En el ejemplo las cuatro CPUs que nos devuelve /proc/cpuinfo (que pertenecen a una única CPU física) tienen 4 “cpu cores”. Cada una de ellas tienen un “core id” distinto, entre 0 y 3. Así que efectivamente nuestro server tiene una única CPU física con 4 cores.
[root@myserver]# grep "core" /proc/cpuinfo
core id         : 0
cpu cores       : 4
core id         : 2
cpu cores       : 4
core id         : 1
cpu cores       : 4
core id         : 3
cpu cores       : 4

¿Cuanta RAM tiene y cómo está distribuida?

Hay muchos métodos para saber la ram de nuestro server. Seguramente el comando más usado para sacar la RAM sea:

[adri@myServer ~]$ free -m
             total       used       free     shared    buffers     cached
Mem:         16053       9775       6277          0        658       8761
-/+ buffers/cache:        355      15698
Swap:         4095          0       4095

En el ejemplo anterior, vemos como nuestro server tiene 16GB de RAM. Si queremos ver el detalle de cuantos módulos de RAM tiene el servidor, de cuanta capacidad cada uno, y de qué tipo, podremos usar el comando “lshw”. Si no tienes el comando instalado, puedes instalarlo con yum. Una vez instalado, bastará con ejecutar, como root, el comando:

[root@myServer ~]# lshw -class memory

Con este comando se nos detallará, para cada slot, si hay un módulo de memoria conectado y en caso afirmativo, se nos dará detalles del tipo de memoria.

     *-bank:0
          description: FB-DIMM DDR2 FB-DIMM Synchronous 667 MHz (1.5 ns)
          physical id: 0
          slot: DIMM 1A
          size: 4GiB
          width: 64 bits
          clock: 667MHz (1.5ns)
     *-bank:1
          description: FB-DIMM DDR2 FB-DIMM Synchronous 667 MHz (1.5 ns)
          physical id: 1
          slot: DIMM 2C
          size: 2GiB
          width: 64 bits
          clock: 667MHz (1.5ns)

Así podremos saber si un server tiene algún slot de memoria libre, o qué tipo de módulo de memoria hemos de comprar para sacarle mayor provecho al servidor, según los módulos de RAM que ya tenga instalados.

 

Fuentes:

http://www.logadmin.net/2007/05/cmo-saber-el-nmero-de-procesadores.html

Flickr! Foto por Eduardo Diez Viñuela

3 opiniones en “¿Cuantas CPUs tiene mi servidor Linux? ¿Y RAM?”

  1. Hola Adrián. Muchas gracias por este articulo. Lo que pasa soy verde en este tema…
    Por favor, me puedes decir, como (con que o donde) hay que ejecutar estos comandos (tengo hosting compartido en un servidor linux).
    Muchas gracias.

    Oleh

    1. Buenas Oleh,
      Son comandos que se ejecutan en un terminal de Linux. Seguramente tu proveedor te haya dado un acceso ssh o quizá encuentres este acceso a través del panel de control de tu hosting.

      Ten en cuenta que ésto es solo para Linux, así que si tienes un hosting Windows no te servirá.

      ¡Saludos!

  2. Hola, si el resutado me da esto, quiere decir que tengo 1 CPU con 12 cores?, o por alguna razon estan repetidos?

    [server]# grep “physical id” /proc/cpuinfo
    physical id : 0
    physical id : 0
    physical id : 0
    physical id : 0
    physical id : 0
    physical id : 0
    physical id : 0
    physical id : 0
    physical id : 0
    physical id : 0
    physical id : 0
    physical id : 0
    [server]# grep “core” /proc/cpuinfo
    core id : 0
    cpu cores : 6
    core id : 1
    cpu cores : 6
    core id : 2
    cpu cores : 6
    core id : 3
    cpu cores : 6
    core id : 4
    cpu cores : 6
    core id : 5
    cpu cores : 6
    core id : 0
    cpu cores : 6
    core id : 1
    cpu cores : 6
    core id : 2
    cpu cores : 6
    core id : 3
    cpu cores : 6
    core id : 4
    cpu cores : 6
    core id : 5
    cpu cores : 6

Deja un comentario

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