Limita el uso del procesador para una aplicación o proceso usando el comando Renice

11/12/2011 por Carlos Burges

Si quieres evitar el excesivo consumo de recursos del procesador de tu Mac por parte e una aplicación o un proceso, siempre puedes recurrir a este truco para evitar que tu portátil o tu iMac, por ejemplo, se sobrecaliente exportando vídeo o realizando tareas que exigen un trabajo excesivo al procesador. Esto hará que estas tareas se tomen mas tiempo del necesario, pero en algunos casos, como por ejemplo, la codificación de vídeo durante las horas de sueño evitan estos sobrecalentamientos o el uso abusivo de los ventiladores de refrigeración.

Paso a paso

  • Obtén el PID de de la aplicación o proceso usando el Terminal (en Aplicaciones > Utilidades) usando el comando top -u
  • Copia y pega el siguiente script en un archivo de texto puro y guardalo en donde quieras con un nombre identificativo como por ejemplo cpulimitrob.sh:

#! /bin/bash

 

# Description:

#

# If you want to decrease the CPU demands for an application

# you can use this very simple and ugly "hack".

# I use it when I convert videos on my MacBook Pro

# to prevent it from getting to warm. Even if the CPU is IDLE this hack

# will prevent the application to use the CPU during Sleep Time

# (in contrast to renice/nice commands which will take all IDLE time).

# This means the conversions will take longer time, but I

# don't care because I run it at night.

#

# There is similar c program for Linux called cpulimit, but it wont

# compile on my Mac.

#

# Usage: sudo ./cpulimitrob.sh

#

# Hint: To get the PID, run first top -u command in one Terminal window.

#

#

echo "Which process ID (PID)? "

read pid

echo "Sleep time in seconds? "

read sleeptime

echo "Run time in seconds (e.g 0.5 or 1 …)? "

read runtime

i=1

dot=.

while true

do

if [ $i -eq 1 ]

then

kill -SIGSTOP $pid

sleep $sleeptime

i=0

else

kill -SIGCONT $pid

sleep $runtime

i=1

fi

echo -n $dot

done


  • Haz el script ejecutable usando el comando chmod 755 cpulimitrob.sh (un buen truco es arrastrar, tras escribir chmod 755 el archivo al Terminal para que aparezca su ruta completa
  • Ejecuta el comando usando sudo ./cpulimitrob.sh (te pedirá la contraseña del administrador)

Si no quieres complicarte la vida usando el Terminal y creando un script, siempre puedes usar la aplicación gratuita ProcessRenicer que te permitirá ajustar el rendimiento de las aplicaciones sobre un interfaz (solo Mac OS X 10.6 Snow Leopard o Mac OS X 10.7 Lion)

0
Comentarios