Volver a la página principal
lunes 23 septiembre 2024
8

Cómo limitar el uso de CPU de un proceso en ejecución con cpulimit

cpulimit es una herramienta en Linux que te permite restringir el uso de la CPU por parte de un proceso en ejecución. Esto es útil para evitar que un proceso consuma todos los recursos del sistema, manteniendo el rendimiento de otras aplicaciones.

Instalación de cpulimit

Primero, asegúrate de que cpulimit esté instalado en tu sistema. Puedes instalarlo usando el siguiente comando según tu distribución:

  • Debian/Ubuntu:
sudo apt install cpulimit
  • CentOS/Fedora:
sudo yum install cpulimit
  • Arch Linux:
sudo pacman -S cpulimit

Uso básico de cpulimit

La sintaxis básica de cpulimit es la siguiente:

sudo cpulimit -p <PID> -l <porcentaje>

Donde:

  • -p: Especifica el PID (identificador del proceso) del proceso que deseas limitar.
  • -l: Define el porcentaje máximo de CPU que puede utilizar el proceso.

Ejemplo:

Si tienes un proceso con el PID 1234 y quieres limitar su uso de CPU al 30%, usarías el siguiente comando:

sudo cpulimit -p 1234 -l 30

Esto limitará el proceso a usar como máximo el 30% de una CPU.

Alternativas para identificar el proceso:

Si no conoces el PID del proceso, puedes usar otros métodos para identificar y limitar el uso de CPU:

1. Limitar un proceso por su nombre:

Si conoces el nombre del proceso, puedes usar la opción -e en lugar de -p:

sudo cpulimit -e nombre_del_proceso -l 40

Esto limita el proceso por nombre al 40% de uso de CPU.

2. Ejecutar un proceso con limitación desde el inicio:

También puedes iniciar un proceso con una limitación de CPU directamente. Por ejemplo:

sudo cpulimit -l 20 -- <comando>

Esto ejecutará el comando especificado (por ejemplo, ./mi_programa) y limitará su uso de CPU al 20%.

Opciones adicionales de cpulimit

  • -v: Modo detallado (verbose), muestra información adicional durante la ejecución.
  • -z: Forza la detención del proceso si deja de consumir CPU y luego lo reactiva si vuelve a necesitar CPU.
  • -b: Ejecuta cpulimit en segundo plano (background).

Ejemplo completo

Supongamos que tienes un proceso llamado mi_programa que está consumiendo demasiada CPU y quieres limitarlo al 50%. Primero, encuentra su PID con ps:

ps aux | grep mi_programa

Luego, usa cpulimit para limitar el proceso al 50%:

sudo cpulimit -p <PID_del_proceso> -l 50
Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer