Autor Tema: gui , para seleccionar a demanda el tipo de gestion de energia  (Leído 5196 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14559
En el kernel existen varios tipos de gestion del cpu

powersave
ondemand
performance
etc

PERO , una es la que esta por defecto y las demas si quiere usarlas deberas hacerlo a mano ...

Para ello , se usan las cpufrequtils, desde consola.

No es nada complicado , pero si lo tenemos en una gui , mejor  ;D

La gui , la he hecho en un ratillo ... es simple pero efectiva.

Indica el modo actual , y los disponibles ..para poder cambiar si quieres.
Soporta español e ingles
Comprueba la existencia de las utlidades que necesita
Si algo falta nos avisara
He puesto sudo en todas las ordenes por si se usa en otro sistema o no se es usuario root

____________________________________________________________________________________________

code

Código: [Seleccionar]
#!/bin/bash

# Determinar idioma / Find languaje
# Si el idioma no es español o variante se usara ingles en los textos.
# If languaje is not spanish or variant then use english texts.
LANGUAJE=`echo $LANG|grep 'es_'`
# Textos
if [ ! -z $LANGUAJE ]; then
NOZENITY="Zenity no esta instalado"
NOCPUFREQ="<b>No tienes instalado cpufrequtils</b>"
GUITEXT="<b>En uso:</b>"
GUITEXT2="Opciones Disponibles:"
else
NOZENITY="Zenity is not installed"
NOCPUFREQ="<b>Cpufrequtils are not installed</b>"
GUITEXT="<b>In use:</b>"
GUITEXT2="Available Options:"
fi

# Testeamos si tenemos zenity / Check if zenity is in system
if ! hash zenity ; then
sudo xterm -e dialog --title "Error" --msgbox "$NOZENITY" 10 30
exit 0
fi

# Testeamos si tenemos cpufrequtils / Test if cpufrequtils is in system
if ! hash cpufreq-info ; then
sudo zenity --window-icon=/usr/share/pixmaps/cpufreq-gui.png --error --title="ERROR" --text="$NOCPUFREQ"
exit 0
fi

# Interface
USING="$(sudo cpufreq-info -p|rev|cut -d ' ' -f1|rev)"
GOVERNORS="$(sudo cpufreq-info -g|sed "s/$USING//g")"
GUI=`sudo zenity --window-icon=/usr/share/pixmaps/cpufreq-gui.png --title="Cpufreq Gui" --text="$GUITEXT  <span color=\"blue\"><b>$(echo $USING|tr [:lower:] [:upper:])</b></span>" --height=220 --width=220 \
--list --column="$GUITEXT2" $GOVERNORS`

# Gorvernors
if [ "$GUI" = "conservative" ]; then
sudo cpufreq-set -g conservative
elif [ "$GUI" = "ondemand" ]; then
sudo cpufreq-set -g ondemand
elif [ "$GUI" = "userspace" ]; then
sudo cpufreq-set -g userspace
elif [ "$GUI" = "powersave" ]; then
sudo cpufreq-set -g powersave
elif [ "$GUI" = "performance" ]; then
sudo cpufreq-set -g performance
fi





MODULO XZM , crea entrada en sistema
http://www.mediafire.com/download/bbwl3t33b8d3bbb/cpufreq-gui-1.0-noarch-1sw.xzm


« Última modificación: 14-02-2016, 01:18 (Domingo) por USUARIONUEVO »

sol666

  • Visitante
Re: gui , para seleccionar a demanda el tipo de gestion de energia
« Respuesta #1 en: 14-02-2016, 02:07 (Domingo) »
hola,en que cambia de performance a powersave?baja la frecuencia de las cpus o algo por el estilo?

crislgga

  • Visitante
Re: gui , para seleccionar a demanda el tipo de gestion de energia
« Respuesta #2 en: 14-02-2016, 02:38 (Domingo) »
hola,en que cambia de performance a powersave?baja la frecuencia de las cpus o algo por el estilo?
Digo yo,aun sin probar y siguiendo las normas de gobernadores de android, la respuesta es si, pero con un toque agresivo, es decir,el perfomance, siempre en el tope de frecuencia mientras que powersave seria el que mas tarda en subir la frecuencia desde el nivel mas bajo del procesador en idle, por ejemplo 1ghz, hasta el tope de cada procesador, pongamos 2ghz, hasta que cpufreq no vea un trabajo continuo durante x seg, va subiendo gradualmente a por ejemplo de 1ghz, a 1.1, despues 1.2....
El powersave tardaria en recorrer el tope por ejemplo 50 seg, ejemplo, coche de 70cv, sin turbo, y haciendo la prueba de 0 a 150 km/h
saludos

Desconectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14559
Re: gui , para seleccionar a demanda el tipo de gestion de energia
« Respuesta #3 en: 14-02-2016, 03:38 (Domingo) »
ademas del cpu , pueden ser manejados otros componentes , como la grafica , ... tarjetas wifi etc

he decidido poner por defecto el "performance" y con la gui , el que quiera poner otra cosa podra hacerlo.

esto es a raiz de ver un post , donde un usuario tenia un rendimiento de video pesimo .. por que al parecer el powersave , estaba funcionando mal ...y la grafica tenia caidas de rendimiento.


el powersave por ejemplo puede bajar la velocidad de giro de un hdd mecanico , mientras no es usado , para ahorrar bateria , y asi con todo.


aun tengo que hacer algunas puebas.

Desconectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14559
Re: gui , para seleccionar a demanda el tipo de gestion de energia
« Respuesta #4 en: 14-02-2016, 05:28 (Domingo) »
version 1.1

corregido bug , governor solo se aplicaba al cpu 0 , si tienes mas nucleos quedaban sin control.
code un poco mas limpio a la parte final , con un blucle "for".

______________________________________________________________________________________________________

Código: [Seleccionar]
#!/bin/bash

# Version 1.1 reparado bug solo aplicaba al primer nucleo
VERSION="1.1"

# Determinar idioma / Find languaje
# Si el idioma no es español o variante se usara ingles en los textos.
# If languaje is not spanish or variant then use english texts.
LANGUAJE=`echo $LANG|grep 'es_'`
# Textos
if [ ! -z $LANGUAJE ]; then
NOZENITY="Zenity no esta instalado"
NOCPUFREQ="<b>No tienes instalado cpufrequtils</b>"
GUITEXT="<b>En uso:</b>"
GUITEXT2="Opciones Disponibles:"
else
NOZENITY="Zenity is not installed"
NOCPUFREQ="<b>Cpufrequtils are not installed</b>"
GUITEXT="<b>In use:</b>"
GUITEXT2="Available Options:"
fi

# Testeamos si tenemos zenity / Check if zenity is in system
if ! hash zenity ; then
sudo xterm -e dialog --title "Error" --msgbox "$NOZENITY" 10 30
exit 0
fi

# Testeamos si tenemos cpufrequtils / Test if cpufrequtils is in system
if ! hash cpufreq-info ; then
sudo zenity --window-icon=/usr/share/pixmaps/cpufreq-gui.png --error --title="ERROR" --text="$NOCPUFREQ"
exit 0
fi

# Interface
USING="$(sudo cpufreq-info -p|rev|cut -d ' ' -f1|rev)"
GOVERNORS="$(sudo cpufreq-info -g|sed "s/$USING//g")"
GUI=`sudo zenity --window-icon=/usr/share/pixmaps/cpufreq-gui.png --title="Cpufreq Gui $VERSION" --text="$GUITEXT  <span color=\"blue\"><b>$(echo $USING|tr [:lower:] [:upper:])</b></span>" --height=220 --width=230 \
--list --column="$GUITEXT2" $GOVERNORS`

# Gorvernor
CORES=`sudo cat /proc/cpuinfo|grep ^processor|rev|cut -d ' ' -f1|rev`
for x in $CORES; do
sudo cpufreq-set --cpu $x --governor "$GUI"
done
« Última modificación: 14-02-2016, 05:43 (Domingo) por USUARIONUEVO »

Desconectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14559
Re: gui , para seleccionar a demanda el tipo de gestion de energia
« Respuesta #5 en: 14-02-2016, 06:30 (Domingo) »
ondemand   Dynamically switch between CPU(s) available if at 95% cpu load
performance   Run the cpu at max frequency
conservative   Dynamically switch between CPU(s) available if at 75% load
powersave   Run the cpu at the minimum frequency
userspace   Run the cpu at user specified frequencies



digamos que a todos os sonaran cosas como "turbo" , "cool n quiet" ,.."turbo boost"

 lo primero es por software , ..lo segundo via hardware ..es decir el hardware ya tiene cosas de ese tipo ..

leyendo las diferentes configuraciones via software para kernel linux, mas o menos os quedara claro.


por ejemplo , ahora mismo tengo el kernel que por defecto ponga siempre performance , pero claro , el procesador tiene su propio balanceo , con lo que el procesador ira como este diseñado de fabrica. (o configurado en bios de placa base donde se pueden desactivar caracteristicas como turbo core , etc etc)

(en mi caso un core i3 del portatil con frecuencia minima 800mhz y maxima de 2.300mhz que ademas no ira dando saltos entre sus 4 cores cuando alcancen el porcentaje por ejemplo del conservative ..que al alcanzar un core el 75% lo libera y coge otro)




luego vemos en la tabla opciones,para intentar que este siempre al minimo y ahorra bateria , o con topes de algun tipo

95%  (ondemand)
75%  (conservative)
o definido por el usuario.  (userspace)


cada procesador tiene su propio driver de scalado ,en un equipo pueden aparecer unas opciones y en otro equipo otras distintas.
« Última modificación: 14-02-2016, 06:34 (Domingo) por USUARIONUEVO »

Desconectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14559
Re: gui , para seleccionar a demanda el tipo de gestion de energia
« Respuesta #6 en: 14-02-2016, 06:36 (Domingo) »
podeis mirar cosas en consola con

Código: [Seleccionar]
cpufreq-info
cpufreq-set --help



Primera y creo que ultima prueba ...

ESCENARIO: PC DE SOBREMESA

Compilacion de kernel 4.1.17 , primero configurando el governor con  "ondemand"




mismo proceso de compilacion con governor "performance"





Si entre esos dos, que son aparentemente similares hay una diferencia de 20 minutos menos a favor del governor performance, no quiero ni pensar en un

powersave  vs  performance    ;D


por defecto el kernel va a usar performance , con la tool , si alguien quiere poner powersave podra hacerlo facilmente, pero sera una estado "temporal",ya que al reiniciar el kernel volvera a su governor por defecto , que a partir de hoy sera  "performance"   (rendimiento)
« Última modificación: 14-02-2016, 21:52 (Domingo) por USUARIONUEVO »

sol666

  • Visitante
Re: gui , para seleccionar a demanda el tipo de gestion de energia
« Respuesta #7 en: 24-02-2016, 22:30 (Miércoles) »
hola,por defecto en la del dia 24 esta en powersave¿puede ser?

Desconectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14559
Re: gui , para seleccionar a demanda el tipo de gestion de energia
« Respuesta #8 en: 25-02-2016, 11:11 (Jueves) »
hola,por defecto en la del dia 24 esta en powersave¿puede ser?

si , de hecho el kernel selecciona el que cree mejor, segun el equipo ...en portatiles casi siempre elige powersave.

he preferido al final dejarlo asi , por la bateria..para que dure mas , si en algun momento vais a hacer tareas pesadas , lo subes con la gui , y despues al acabar lo bajas.  ;D

//FINAL Y MÁS DOS RESPUESTAS