Reducción del consumo de energía de Linux, Parte 2: Configuraciones generales y específicas de reguladores

Conozca las configuraciones posibles y la forma en que éstas controlan el uso de energía

Estaserie de tres parteses el punto de partida para ajustar su sistema a fin de mejorar la eficiencia en el consumo de energía. En la Parte 2, siga una guía paso a paso sobre las configuraciones generales del subsistema LinuxCPUfreq y obtenga más detalles acerca de los cinco reguladores internos del kernel (performance, powersave, userspace, ondemand y conservative) y sus respectivas configuraciones.

Comparta su experiencia: ¿Qué hace usted para ahorrar energía en su empresa?Agregue sus comentariosa continuación.

Jenifer Hopper, Software Engineer, IBM

author photo - Jenifer HopperJenifer Hopper es Software Engineer para el IBM Linux Performance Group en Austin, Texas. En la actualidad, se concentra en High Performance Computing (HPC), en las cargas energéticas de trabajo y en las herramientas de análisis de datos y generadores de datos de sistemas.



28-12-2009

Acerca de esta serie

En esta serie, aprenda a ajustar su servidor IBM System x® basado en Linux para mejorar la eficiencia del consumo de energía. Aquí aprenderá todo lo necesario acerca de los reguladores internos del kernel, sus configuraciones y cómo usarlos; también comprenderá cómo incide el ajuste de los reguladores en el rendimiento de la energía y la carga de trabajo de comercio electrónico. Los ejemplos están basados en un servidor System x que se ejecuta en Red Hat Enterprise Linux, versión 5.2 (RHEL 5.2), pero los lineamientos proporcionados se aplican a todos los kernels 2.6.x, y a cualquier tipo de procesador que soporte el escalamiento de frecuencias.

La Parte 1 presenta los componentes y conceptos que lo ayudarán a ajustar su sistema para mejorar la eficiencia del consumo de energía, entre ellos, el subsistema Linux CPUfreq, los estados C y P, y los cinco reguladores internos del kernel.

La Parte 2 proporciona más detalles sobre las configuraciones generales del subsistema Linux CPUfreq y de los cinco reguladores internos del kernel:—performance, powersave, userspace,ondemand y conservative— junto con sus respectivas configuraciones.

La Parte 3 realiza una comparación del rendimiento de los cinco reguladores internos del kernel en estados ajustado y no ajustado para mostrarle los resultados que puede lograr ajustando su sistema para reducir el consumo de energía.

Configuraciones generales de CPUfreq

En primer lugar, demostraremos cuán sencillo es comenzar a usar el subsistema Linux CPUfreq detallando las configuraciones de uso y mostrando algunas opciones de interfaz. Comenzaremos por las siguientes configuraciones generales:

  • La interfaz /sys
  • El archivo de configuraciones cpuspeed
  • cpufreq-utils

Uso de la interfaz /sys

El sistema de archivos /sys proporciona una interfaz de usuario para CPUfreq que se inicia en /sys/devices/system/cpu/. Algunos de estos archivos son editables (por root) y otros son de sólo lectura.

Primero, dé una mirada a /sys/devices/system/cpu/. Allí encontrará un directorio para cada CPU lógico, el configurable sched_mc_power_savings y, si está disponible en su sistema, el configurable sched_smt_power_savings, al cual me referiré más adelante.

Listado 1. Revisión del contenido de /sys/devices/system/cpu/
[root@systemx ~]#cd
                    /sys/devices/system/cpu/
[root@systemx cpu]# ls
cpu0 cpu1 cpu2 cpu3 cpu4 cpu5 cpu6 cpu7 sched_mc_power_savings

Dentro del directorio de cada procesador hay un directorio cpufreq, el cual contiene la interfaz CPUfreq:

Listado 2. Revisión del directorio cpufreq
[root@systemx cpu]# 
					cd
                cpu0/cpufreq/ [root@systemx cpufreq]#ls -l
				total 0 -r--r--r-- 1 root root
                4096 Oct 31 14:53 affected_cpus -r-------- 1 
				root root 4096 Oct 31 14:53
                cpuinfo_cur_freq -r--r--r-- 1 root root 
				4096 Oct 31 14:53
				cpuinfo_max_freq
                -r--r--r-- 1 root root 4096 Oct 31 
				14:53 cpuinfo_min_freq -r--r--r-- 1 root root
                4096 Oct 31 14:53 scaling_available_frequencies 
				-r--r--r-- 1 root root 4096 Oct 31
                14:53 scaling_available_governors -r--r--r-- 1 
				root root 4096 Oct 31 14:53
                scaling_cur_freq -r--r--r-- 1
				root root 4096 Oct 31 14:53 
				scaling_driver -rw-r--r--1 root root 0 
				Nov 5 11:44 scaling_governor -rw-r--r-- 1 
				root root 4096 Oct 31 14:53
                scaling_max_freq -rw-r--r-- 1 
				root root 4096 Oct 31 14:53 scaling_min_freq

Únase a los grupos ecológicos de My developerWorks

Opine sobre distintos temas y comparta recursos acerca de la energía, la eficiencia y el medio ambiente en el espacio de GReen IT Report y el Green Computing Group en My developerWorks.

Si el regulador está establecido en conservative o ondemand, aquí también verá un directorio del nombre del regulador. Más adelante explicaré cómo cambiar el regulador.

Estos archivos están disponibles para todos los reguladores. Primero veremos qué significa cada configuración y cómo cambiar algunas de ellas; luego nos referiremos a una serie de configuraciones específicas de cada regulador que se encuentran fuera de esta interfaz. Considere que las configuraciones del directorio cpufreq pueden diferir en cada procesador. Para obtener una política uniforme en todos los procesadores, deberá cambiar el valor de la configuración de cada procesador como se explica en las siguientes secciones.

Primero,affected_cpus muestra los procesadores que se ven afectados por los cambios de frecuencia. Ciertos procesadores dependen de la frecuencia de otros debido a la coordinación de su hardware, software o ambos y sus frecuencias deben cambiar al mismo tiempo. Por ejemplo, usted podría ver una configuración de este tipo:

Listado 3. Revisión de los procesadores afectados por los cambios de frecuencia
[root@systemx
                    ~]#cd /sys/devices/system/cpu[root@systemx cpu]# grep .
                    cpu*/cpufreq/affected_cpus cpu0/cpufreq/affected_cpus:0 1
                cpu1/cpufreq/affected_cpus:0 1 cpu2/cpufreq/affected_cpus:2 3
                cpu3/cpufreq/affected_cpus:2 3

Por otra parte, cpuinfo_cur_freq muestra la frecuencia operativa actual del procesador. El archivo scaling_cur_freq lista la frecuencia de escalamiento actual de los reguladores.

Listado 4. Revisión de las frecuencias
[root@systemx cpufreq]# cat cpuinfo_cur_freq 2997000
                [root@systemx cpufreq]# cat scaling_cur_freq 2997000

Todas las frecuencias listadas en esta interfaz están expresadas en KHz.

A continuación se muestran algunos archivos que proporcionan información acerca de las frecuencias de procesadores disponibles. Los archivos cpuinfo_max_freq y cpuinfo_min_freq mantienen disponibles las frecuencias máxima y mínima para el sistema; scaling_available_frequencies muestra todas las frecuencias disponibles.

Listado 5. Revisión de las frecuencias máxima y mínima y las frecuencias disponibles
[root@systemx
                    cpufreq]# cat cpuinfo_max_freq 2997000 [root@systemx cpufreq]#cat
                    cpuinfo_min_freq 1998000 [root@systemx cpufreq]#  cat
                    scaling_available_frequencies 2997000 2664000 2331000 1998000

El archivo scaling_available_governors lista todos los reguladores disponibles. Si usted no ve los cinco reguladores, verifique que todos los reguladores estén activados en su archivo config y que el módulo de reguladores esté cargado de acuerdo con las instrucciones proporcionadas en la Parte 1.

Listado 6. Revisión de los reguladores disponibles
 [root@systemx cpufreq]# cat
                    scaling_available_governors ondemand powersave conservative userspace
                performance

El archivo scaling_driver le indicará en qué driver cpufreq se está ejecutando su sistema. Algunos drivers comunes sonacpi, speedstep-smi, speedstep-centrino,powernor_k8,powernow_k7,longhaul, etc. Si desea cambiar el driver, deberá desinstalar el driver en uso antes de cargar uno nuevo. Además, no olvide verificar que el driver que desea instalar funcione con su procesador antes de intentar usarlo.

Listado 7. Revisión del driver cpufreq en uso
[root@systemx cpufreq]# cat
                scaling_driver centrino

El resto de los archivos de este directorio son editables por root y brindan al usuario la capacidad de modificar algunas configuraciones cpufreq. Estos archivos son la única configuración que se le permite cambiar al usuario en los reguladores powersave y performance. Los otros reguladores poseen configuraciones adicionales que abordaremos en la próxima sección.

El archivoscaling_governormuestra el regulador que se encuentra actualmente activado. Para cambiar de regulador, simplemente use el comandoechocon el nombre del regulador nuevo hacia este archivo. Considere que esta acción debe realizarse con todos los procesadores para obtener una política uniforme. Por ejemplo:

Listado 8. Revisión del regulador activado y cambio de reguladores
[root@systemx ~]#cd
                    /sys/devices/system/cpu/ [root@systemx cpu]# ls 
					cpu0 cpu1 cpu2 cpu3 cpu4
                cpu5 cpu6 cpu7 sched_mc_power_savings [root@systemx cpu]# cat
                    cpu0/cpufreq/scaling_governor 
					performance [root@systemx cpu]# echo
                    conservative > cpu0/cpufreq/scaling_governor 
					[root@systemx cpu]# cat
                    cpu0/cpufreq/scaling_governor conservative

Los archivosscaling_max_freq y scaling_min_freq muestran las frecuencias máxima y mínima disponibles para el regulador. El usuario puede cambiar el rango de frecuencias disponible para el regulador usando el comando echo con una frecuencia disponible hacia estos archivos. Tome en cuenta que la frecuencia debe estar incluida en la lista scaling_available_frequencies, ya que la lista muestra todas las frecuencias de procesadores disponibles para el sistema. Nuevamente, considere que deberá realizar esta acción para todos los procesadores. Por ejemplo:

Listado 9. Cambio de las frecuencias disponibles para un regulador
[root@systemx ~]#cd
                    /sys/devices/system/cpu/[root@systemx cpu]# cat
                    cpu0/cpufreq/scaling_available_frequencies
					2997000 2664000 2331000 1998000
                [root@systemx cpu]# cat cpu0/cpufreq/scaling_max_freq 
				2997000 [root@systemx
                    cpu]# cat cpu0/cpufreq/scaling_min_freq1998000 
					[root@systemx cpu]# echo
                    2331000 > cpu0/cpufreq/scaling_min_freq
					[root@systemx cpu]# cat
                    cpu0/cpufreq/scaling_min_freq 2331000

Uso del archivo de configuraciones cpuspeed

Otra alternativa que tiene el usuario en lugar de usar el comandoecho para ingresar los valores de las configuraciones es usar el archivo de configuraciones cpuspeed para cambiar el driver, el regulador, las velocidades mínima y máxima, los límites de utilización y la configuración ignore_nice_load. RHEL 5.2 incluye cpuspeed, pero otras distribuciones de Linux podrían no contener este paquete. Si cpuspeed no está incluido en su distribución, puede descargar la versión carlthompson.net; el archivo README proporciona las instrucciones de instalación. Para usar la versión RHEL 5.2 de cpuspeed, simplemente edite el archivo /etc/sysconfig/cpuspeed, asigne un valor a cualquiera de las variables de configuración de este archivo y ejecute el siguiente comando:

/etc/init.d/cpuspeed restart

Este comando aplicará las nuevas configuraciones. Recuerde que debe tener cargado el módulo de regulador correspondiente para poder empezar a usar el regulador, a menos que éste ya estuviera incorporado.

Uso de cpufreq-utils

RHEL 5.2 y otras distribuciones incluyen además el paquete cpufreq-utils, el cual habilita otra interfaz de usuario al subsistema CPUfreq. La mayoría de las distribuciones incluyen este paquete. Al instalar cpufreq-utils rpm, obtendrá dos utilidades denominadas cpufreq-info y cpufreq-set.

La utilidad cpufreq-info lista la siguiente información acerca de los procesadores y sus configuraciones CPUfreq: la frecuencia actual, los límites de frecuencia, el driver CPUfreq, la política actual, el regulador actual y la listaaffected-cpus.

La utilidad cpufreq-set permite al usuario cambiar el rango de frecuencias disponibles de cada regulador, el regulador en funcionamiento, y la frecuencia de ejecución actual al activar el regulador userspace. Para obtener más información, consulte las páginas man de cpufreq-info y cpufreq-set.


Configuraciones específicas de los reguladores

Ahora pasemos a las configuraciones de los reguladores internos del kernel que puede cambiar el usuario.

Los reguladores powersave y performance

Estos reguladores establecen estadísticamente la frecuencia de procesadores a las frecuencias mínima y máxima, respectivamente. Las únicas configuraciones que puede cambiar el usuario son las mencionadas en la sección anterior.

Regulador userspace

En adelante, nos referiremos a las configuraciones específicas de los reguladores. Si usted activa el regulador userspace, verá además un archivo llamado scaling_setspeed, el cual es editable por root en el directorio cpufreq. Este regulador permite al usuario o a un programa de userspace cambiar interactivamente la frecuencia de procesadores. El usuario tiene la capacidad de usar el comando echo con la frecuencia deseada hacia este archivo y permitir que un daemon de userspace establezca este valor. Al igual que con los archivos antes explicados, deberá modificar el archivoscaling_setspeed de cada procesador.

Existen muchos daemons que trabajan con el regulador userspace para ajustar la frecuencia de procesadores; algunos de ellos son:

  • cpudyn(CPU dynamic frequency control – control de la frecuencia dinámica de la CPU): este daemon basa los cambios de frecuencia fuera de la carga del procesador y, también tiene la capacidad de poner discos en espera cuando se agota la actividad y no es posible guardar más energía.
  • cpufreqd: este daemon se puede configurar para reaccionar ante factores como: nivel de bacteria, estado AC, temperatura, programas en ejecución, uso de procesadores, etc.
  • cpuspeed: este daemon cambia frecuencias en base a la demanda de procesadores, los cambios de suministros de energía, la temperatura, etc.
  • powernowd: este daemon de regulador basa los cambios de frecuencia fuera de la carga del procesador y ofrece cuatro modos de comportamiento distintos a elección del usuario.

Ondemand governor

Si carga el regulador ondemand, verá un directorio llamado ondemand en el directorio cpufreq. Este directorio incluye muchas configuraciones ajustables. Todos los archivos editables (por root) pueden modificarse usando el comandoecho con los valores nuevos como se mostró anteriormente. Considere que todo cambio de las configuraciones de ondemand se aplicará en todo el sistema, por lo tanto, no será necesario cambiar la configuración de cada procesador.

Listado 10. Revisión de las configuraciones ajustables de ondemand
[root@systemx ~]#cd
                    /sys/devices/system/cpu/cpu0/cpufreq/ondemand/
					[root@systemx ondemand]#ls
                    -l total 0 -rw-r--r-- 1 root 
					root 4096 Nov 19 10:30 ignore_nice_load
                -rw-r--r-- 1 root root 4096 Nov 19 10:30 
				powersave_bias -rw-r--r-- 1 root root 4096
                Nov 19 10:30 sampling_rate -r--r--r-- 1 root root 
				4096 Nov 19 10:30
                sampling_rate_max -r--r--r-- 1 root root 
				4096 Nov 19 10:30 sampling_rate_min
                -rw-r--r-- 1 root root 4096 Nov 19 10:30 up_threshold

El archivoignore_nice_load puede fijarse en 0 o 1 (su valor predeterminado es 0). Cuando este parámetro está fijado en 1, todos los procesos con valor "nice" no se considerarán en el nivel de utilización de procesadores general. Con la opción 0, todos los procesos se incluirán en el nivel de utilización. Esta configuración resulta útil cuando se está ejecutando un proceso que requiere de una gran porción de procesador y no importa su tiempo de ejecución. Si aplica la configuración "nice" al proceso, evitará que éste influya sobre las decisiones de frecuencia.

El archivopowersave_bias es una configuración que se creó para modificar levemente el comportamiento del regulador ondemand y lograr un ahorro mayor de energía cuando el usuario no se centra tanto en el rendimiento y reduce su frecuencia meta en un porcentaje específico. Esta configuración puede fijarse en un valor entre 1 y 1000 y resultará en una reducción del 0,1 por ciento al 100 por ciento de la frecuencia.

sampling_rate, medido en microsegundos, determina la asiduidad con que el regulador revisará el nivel de utilización de procesadores para decidir la frecuencia a establecer. Para esta configuración debe establecerse un valor que se encuentre entre los valores sampling_rate_min y sampling_rate_max.

Por último, la configuración up_thresholdpermite al usuario cambiar el límite máximo de utilización del procesador que activa un cambio en las frecuencias de procesador. El valor predeterminado de up_threshold es 80. Esto significa que cada sampling_rate, el kernel verificará el nivel de utilización de procesadores y, si éste supera el 80 por ciento de utilización, el regulador aumentará la frecuencia a la frecuencia máxima disponible.

Regulador conservative

Si carga el regulador conservative, verá un directorio llamado conservative en el directorio cpufreq. Este directorio incluye varias configuraciones ajustables. Todos los archivos editables (por root) pueden modificarse usando el comandoecho con el valor nuevo como se mostró anteriormente. Considere que todo cambio de las configuraciones de conservative se aplicará en todo el sistema, por lo tanto, no será necesario cambiar la configuración de cada procesador.

Listado 11. Revisión de las configuraciones ajustables de conservative
[root@systemx ~]# cd
                    /sys/devices/system/cpu/cpu0/cpufreq/conservative/
					[root@systemx
                    conservative]# ls -l total 0 
					-rw-r--r-- 1 root root 4096 Nov 19 11:31
                down_threshold -rw-r--r-- 1 root root 
				4096 Nov 19 11:31 freq_step -rw-r--r-- 1 root
                root 4096 Nov 19 11:31 ignore_nice_load -rw-r--r-- 1
				root root 4096 Nov 19 11:31
                sampling_down_factor -rw-r--r-- 1
				root root 4096 Nov 19 11:31 sampling_rate
                -r--r--r-- 1 root root 4096 Nov 19 11:31 
				sampling_rate_max -r--r--r-- 1 root root
                4096 Nov 19 11:31 sampling_rate_min -rw-r--r-- 1 
				root root 4096 Nov 19 11:31
                up_threshold

Las configuraciones de ignore_nice_load,sampling_rate,sampling_rate_max,sampling_rate_minyup_threshold son iguales a las antes descriptas para el regulador ondemand.

El regulador conservative también permite al usuario establecer eldown_threshold. Por ejemplo, el valor predeterminado dedown_threshold es 20. Esto significa que cadasampling_rate, el kernel verificará el nivel de utilización de procesadores y si éste es menor al 20 por ciento de utilización, el regulador reducirá la frecuencia.

La configuración freq_step cambia el tamaño del escalón de frecuencia que usa el regulador para cambiar la frecuencia de CPU en cualquier dirección. El valor predeterminado es 5, lo cual significa que el regulador cambiará la frecuencia en un 5 por ciento de la frecuencia máxima o mínima cada vez que tome la decisión de cambiar frecuencias. Si fija este valor en 100, el regulador actuará exactamente igual que el regulador ondemand.

Finalmente, sampling_down_factor funciona como un multiplicador con sampling_rate para reducir la asiduidad de verificación del nivel de utilización de procesadores. Por ejemplo, si sampling_rate se fija en 10.000 y sampling_down_factor en 2, el kernel verificará el nivel de utilización de procesadores cada 20.000 microsegundos.

Configurables del planificador

Ahora analizaremos los dos configurables del planificador:—

  • sched_mc_power_savings sirve para planificar procesos en núcleos.
  • sched_smt_power_savings sirve para planificar procesos en hiperencadenamientos dentro de un núcleo.

sched_mc_power_savings

sched_mc_power_savings es un configurable del planificador ubicado en el directorio /sys/devices/system/cpu/ . No olvide establecer la opción del archivo de configuración CONFIG_SCHED_MC en y como se explicó en la sección de configuración (de la Parte 1) si desea usar este configurable.

Listado 12. Revisión de la ubicación de sched_mc_power_savings
[root@systemx ~]# cd
                    /sys/devices/system/cpu/[root@systemx cpu]# ls -l
					total 0 drwxr-xr-x 5
                root root 0 Nov 12 17:45 cpu0 drwxr-xr-x 5 
				root root 0 Nov 12 17:45 cpu1 drwxr-xr-x
                5 root root 0 Nov 12 17:45 cpu2 drwxr-xr-x 5 
				root root 0 Nov 12 17:45 cpu3
                drwxr-xr-x 5 root root 0 Nov 12 17:45 
				cpu4 drwxr-xr-x 5 root root 0 Nov 12 17:45
                cpu5 drwxr-xr-x 5 root root 0 Nov 12 17:45 
				cpu6 drwxr-xr-x 5 root root 0 Nov 12
                17:45 cpu7 -rwxrwxr-x 1 root root 4096 Nov 19 09:54 sched_mc_power_savings

El archivosched_mc_power_savings puede fijarse en 0 o 1; el valor predeterminado es 0. En 1, el planificador intenta planificar procesos en la menor cantidad de núcleos posible para que los otros puedan permanecer inactivos. En otras palabras, si todos los procesadores están poco ocupados,sched_mc_power_savings intenta consolidar el trabajo en la menor cantidad de procesadores posibles. A su vez, esto logra que algunos procesadores se mantengan inactivos por más tiempo, lo cual se traduce en un ahorro de energía, especialmente si el procesador soporta un estado de hibernación profunda, como los estados C, en el que se utilice muy poca energía en momentos de inactividad. Los ahorros de energía reales pueden variar en base a múltiples factores, como la cantidad de procesadores disponibles o el regulador CPUfreq que se esté ejecutando. Cuandosched_mc_power_savings se fija en 0, no se realiza ninguna planificación especial.

sched_smt_power_savings

El configurable sched_smt_power_savings es otro configurable del planificador que también se encuentra en el directorio /sys/devices/system/cpu/; sin embargo, esta opción de ajuste solamente está disponible en sistemas que soportan el hiperencadenamiento. No olvide establecer la opción del archivo de configuraciónCONFIG_SCHED_SMT en y , como se explicó en la sección de configuración (de la Parte 1) si desea usar este configurable.

Listado 13. Revisión de la ubicación de sched_smt_power_savings
[root@systemx ~]# 
					cd/sys/devices/system/cpu/[root@systemx cpu]#
					ls -l total 0 drwxr-xr-x 5
                root root 0 Nov 12 17:45 cpu0 drwxr-xr-x 5 
				root root 0 Nov 12 17:45 cpu1 drwxr-xr-x
                5 root root 0 Nov 12 17:45 cpu2 drwxr-xr-x 
				5 root root 0 Nov 12 17:45 cpu3
                drwxr-xr-x 5 root root 0 Nov 12 17:45 
				cpu4 drwxr-xr-x 5 root root 0 Nov 12 17:45
                cpu5 drwxr-xr-x 5 root root 0 Nov 12 17:45
				cpu6 drwxr-xr-x 5 root root 0 Nov 12
                17:45 cpu7 -rwxrwxr-x 1 root root 
				4096 Nov 19 09:54 sched_mc_power_savings
                -rwxrwxr-x 1 root root 
				4096 Nov 19 09:54 sched_smt_power_savings

Al igual que la configuración sched_mc_power_savings, el archivo sched_smt_power_savings puede fijarse en 0 o 1; el valor predeterminado es 0. En 1, el planificador intenta planificar procesos en la menor cantidad de hiperencadenamientos de un núcleo posible para que los otros puedan permanecer inactivos y así ahorrar energía usando estados de inactividad C.

Próxima parte

En la Parte 3, explicaré los efectos que cada regulador puede provocar sobre distintas cargas de trabajo y usaré dos cargas de trabajo de configuración conocidas.

Recursos

Aprender

Obtener los productos y tecnologías

Comentar

Comentarios

developerWorks: Ingrese

Los campos obligatorios están marcados con un asterisco (*).


¿Necesita un IBM ID?
¿Olvidó su IBM ID?


¿Olvidó su Password?
Cambie su Password

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


La primera vez que inicie sesión en developerWorks, se creará un perfil para usted. La información en su propio perfil (nombre, país/región y nombre de la empresa) se muestra al público y acompañará a cualquier contenido que publique, a menos que opte por la opción de ocultar el nombre de su empresa. Puede actualizar su cuenta de IBM en cualquier momento.

Toda la información enviada es segura.

Elija su nombre para mostrar



La primera vez que inicia sesión en developerWorks se crea un perfil para usted, teniendo que elegir un nombre para mostrar en el mismo. Este nombre acompañará el contenido que usted publique en developerWorks.

Por favor elija un nombre de 3 - 31 caracteres. Su nombre de usuario debe ser único en la comunidad developerWorks y debe ser distinto a su dirección de email por motivos de privacidad.

Los campos obligatorios están marcados con un asterisco (*).

(Por favor elija un nombre de 3 - 31 caracteres.)

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


Toda la información enviada es segura.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=90
Zone=Linux
ArticleID=458907
ArticleTitle=Reducción del consumo de energía de Linux, Parte 2: Configuraciones generales y específicas de reguladores
publish-date=12282009