CPU-hotplug – Desactivar y activar cores de una CPU en caliente

El kernel Linux soporta lo que se llama “cpu-hotplug”. Un mecanismo que nos permite habilitar o deshabilitar una CPU o el core de una CPU cuando tiene más de 1. Permite hacer esto sin reiniciar el sistema.

# Comprobar el número de cores

Para comprobarlo lo primero es ver cuantos cores tiene tu CPU. Esto podemos hacerlo de varias formas.
Por ejemplo así:

# lscpu -be

Mostrará algo así como esto si tienes solamente 2 cores:

O si tienes 4 algo así como esto:

Otra forma es así:

# ls -l /sys/devices/system/cpu/

En ese caso nos fijaremos en los directorios que comienzan por cpu tal que : cpu0, cpu1, …

Usemos la forma que usemos (también simplemente lscpu para verlo) hemos de saber que el core 1 comenzará por 0 y si tenemos 4 cores pues serán: cpu0, cpu1, cpu2 y cpu3

Si usásemos solamente “lscpu” nos mostraría lo mismo que podemos ver haciendo “cat /proc/cpuinfo”.
Una forma más de verlo sería con grep filtrando por “processor”:

# grep "processor" /proc/cpuinfo

# Apagar o poner offline uno de ellos

En este caso el segundo (el primero es cpu0). Así:

# echo 0 > /sys/devices/system/cpu/cpu1/online 

Si nos fijamos en la imagen he realizado un cat antes a ese archivo para comprobar que tenia un 1. Eso nos dice que si queremos poner online de nuevo ese core tendremos que realizar el mismo proceso pero añadiendo un 1 así:

# echo 1 > /sys/devices/system/cpu/cpu1/online 

Con htop tendríamos que poder ver esto con colorines:

Deja un comentario