|
||
#1
|
||||
|
||||
governor android
Buenas, desde que empece en el mundillo de android y el tema de las rom cocinadas, me ha tenido con dudas el tema de los governor que trae cyanogen, lazy, ondemand, interactive, interactivex, smartass, .... Pero so se exactamente como funciona cada uno y cual es mejor para ahorrar bateria, mejorar rendimiento, etc.. He buscado informacion pero no encuentro nada claro.
Espero que algun compañero pueda aclararme un poco como funcionan. Un saludo |
|
#2
|
||||
|
||||
http://forum.xda-developers.com/showthread.php?t=843406
Primero una aclaración: los governors son parte del kernel. No todos tienen por qué estar presentes en un determinado kernel. La herramienta más práctica para cambiar de uno a otro es SetCPU. Traduzco lo jugoso: Ondemand Disponible en casi todos los kernels, y el governor por defecto en casi todos. Cuando la carga de la CPU llega a cierto punto (mirar "up thereshold" en Advanced Settings), ondemand rapidamente escalará hacia arriba la CPU para cubrir la demanda, y luego gradualmente escalará hacia abajo la CPU cuando la demanda cese. Conservative Disponible sólo en algunos kernels. Es similar al governor ondemand, pero escalará la CPU más gradualmente para adecuarse mejor a la demanda. Conservative da una experiencia menos 'fina' (por decirlo de alguna manera) que la ondemand, pero puede ahorrar batería. Performance Disponible en casi todos los kernel. Mantendrá a la CPU corriendo al valor "máximo" marcado todo el tiempo. Esto es un poco más eficiente que poner el mismo valor en el "máximo" y "minimo" y usando ondemand, dado que el sistema no malgastará recursos escaneando la carga de CPU. Este governor es recomendable para hacer un benchmark estable. Powersave Disponible en algunos kernels. Mantendrá la CPU corriendo en el valor "mínimo" marcado todo el tiempo. Userspace Un método de controlar la velocidad de la CPU no utilizado por SetCPU. Para obtener los mejores resultados, no lo utilicéis. Interactive El governor interactive usa un concepto diferente. En vez de muestrear la CPU a un ritmo específico, el governor escalará hacia arriba la CPU cuando salga del bucle idle. Cuando la CPU sale de idle, un timer se configura para disparar en 1-2 ticks. Si la CPU esta al 100% ocupada después de salir de idle cuando el timer dispara asumimos que la CPU está sobre-demandada y subimos a "maxima" velocidad. Si la CPU no está ocupada al 100%, entonces el governor evalua la carga de CPU sobre los últimos "min_sample_rate" (por defecto 50000 uS) para determinar si la velocidad de la CPU ebe bajar. Smartass Más o menos, basado en interactive, pero mejor. No hay una explicación específica de como funciona más allá de que es interactive reescrito de otra manera, y mejor. |
Gracias de parte de: | ||