![]() |
|
ROMs y desarrollo Xiaomi MI3 ROMs y desarrollo Xiaomi MI3 |
«
Tema Anterior
|
Siguiente tema
»
|
Herramientas |
#1
|
||||
|
||||
[cpu, i/o, gpu, tcp, hotplug, thermal, etc...]
Hace unos días le pedí al compañero @moludo que me dejará poner su trabajo por aquí y me ha dado permiso.
Consiste en una recopilación de todo (o casi todo lo relacionado con el kernel) Dadle las gracias a él por el tremendo curro que se ha pegado con esta recopilación Yo me voy a limitar a poner los más importante, si queréis leer mas, pasaos por su tema FUENTE ORIGINAL http://www.htcmania.com/showthread.php?t=960455 GOVERNORS ¿Qué son los governors? Los governors son los encargados de gestionar el uso de las frecuencias de la CPU. Dicho de otro modo, es el que decide cuándo utilizar la frecuencia máxima (en el OPO por defecto es de 2.5GHz) para sacar todo el rendimiento de nuestro "bicharraco", las intermedias (2.2, 1.9,1.7,1.5,1.4ghz etc...) o cuándo trabajar al mínimo (300Mhz). Primeramente vamos a hablar de los governors más conocidos, los que suelen incluir la mayoría de los kernels. Un kernel no tiene por que incluir todos estos, eso depende del desarrollador. Son los siguientes:
(Click para mostrar/ocultar)
Categorias: Hay cuatro categorias para los governors. 1) Basados en Ondemand: Trabajan bajo el principio “Aumentar bajo mucha carga(ramp-up on high load)” . El tiempo de ocupacion de la CPU se toma en cuenta para escalar las decisiones y aumentar las frecuencias. Miembros: Ondemand, OndemandX, Intellidemand, Lazy, Lagfree, PegasusQ, HYPER, Wheatley, Hotplug, HotplugX, AbyssPlug, AbyssPlugv2, Nightmare, Sleepy. 2) Basados en Conservative: Trabajan viendo la preferencia del telefono para elegir la velocidad de cpu mas baja posible lo mas frecuentemente posible. Miembros: Conservative, Lionheart, LionheartX 3) Basados en Interactive: Trabajan bajo el principio “escalar la cpu cuando la cpu sale de bucles inutiles(make scaling decision when CPU comes out of idle-loop)” Miembros: Interactive, InteractiveX, Intelliactive, Lulzactive, Luzactiveq, Smartass, SmartassV2, SmartassH3, Brazilianwax, SavagedZen, Dyninteractive. 4) Basados en Categoria "Unique" : Estos no se encuentran en ninguna otra categoría anterior y/o poseen atributos únicos Miembros: Userspace, Powersave, Performance, Min Max, ZZmove, MSM DCVS 5) Basados en categoria "Hybrid" : Estos tienen la mezcla de dos (o mas) comportamientos de governors de Cpu. Miembros: Smartmax, Dancedance, Performance May Cry(PMC), Ktoonservative, KtoonservativeQ Última edición por alexret Día 24/04/15 a las 18:19:43 |
Los siguientes 5 usuarios han agradecido a su comentario: | ||
|
#2
|
||||
|
||||
I/O SCHEDULERS (I/O = Imput/Output)
P. “¿Para qué sirve un I/O Scheduler?” R.Reducir al mínimo la latencia de búsqueda del disco duro. Dar prioridad a las operaciones de I/O de algunos procesos. Asignar más espacio en disco para los procesos en ejecución. Garantizar que ciertas peticiones se ejecutan antes de un tiempo límite. Para entenderlo de una forma más simple: el kernel controla los accesos al disco usando un I/O Scheduler (Scheduler = planificador). P. “¿Qué metas persigue cada I/O scheduler para tratar de conseguir un equilibrio?” R.Equidad (que cada proceso tenga su parte asignada de acceso al disco). Rendimiento (tratar de atender las solicitudes que se encuentren en primer lugar, haciendo la búsqueda más rádida). Tiempo real (garantizar que las solicitudes son atendidas en un tiempo dado). I/O SCHEDULERS
(Click para mostrar/ocultar)
Última edición por alexret Día 24/04/15 a las 18:22:35 |
Los siguientes 4 usuarios han agradecido a su comentario: | ||
#3
|
||||
|
||||
Hotplugging drivers:
- mpdecision (Driver por defecto de Qualcomm para el hotplug) - msm_hotplug (Buena duracion de bateria, hotplug basado en el original de qualcomm hecho por myflux) - intelliplug (Genial para rendimiento,muchas opciones de personalizacion hecho por Faux) - Alucard HotPlug (Un genial driver de hotplug hecho por Alucard) -AutoSMP, un simple y eficiente Driver para el Hotplug (Creado por Mrg666), se encuentra en kernels nexus 4. Los Custom Kernels es posible que lleven sus propios driver Hotplug, pero normalmente se basan en estos. Yo recomiendo jugar con ellos y ver como te responden. El hotplug Alucard parece ser el que mejor rendimiento de bateria da ,Los hotplug por defecto de qualcomm son mejores en rendimiento. Si tu experimentas problemas , manten los ajustes en AUTO. Si quieres experimentar, ten por seguro que experimentaras cambios en la vida de la bateria, tanto a peor como a mejor. Gestor Termico La manera que tienen de gestionar los cores el calor.Cuando activarlos o desactivarlos según la temperatura. Thermald (Stock) Intellithermal(Mejor control que el stock, opcion a cuando activar y que nucleos activar.) GPU governors / Gpu Algorithm GPU governors
(Click para mostrar/ocultar)
Gpu Algorithm
(Click para mostrar/ocultar)
Gestor de Memoria. Ajustes de memoria/cache Intercambio de Zram zRam es un módulo que ayuda a mejorar el desempeño del sistema evitando utilizar la memoria de intercambio en el disco duro (swap) utilizando en su lugar un dispositivo de bloque comprimido en la memoria RAM. Siendo que utilizar memoria RAM es más eficiente y rápido que utilizar memoria de intercambio en el disco duro, zRam permite utilizar la memoria RAM al realizar intercambio/paginación cuando es requerido. Es sin duda una excelente alternativa para equipos antiguos con poco RAM. Limpiador CAche VFS despues de arrancar Esta opcion forzara que se reescriba la cache del sistema basado en la aplicacion usandose para procesos de arranque e inicio. Activalo para un mejor rendimiento de Lectura/Escritura del sistema! Auto FS Writeback Delay Mode esta opción retrasará la reescritura de los bits de sistema de archivos en caché en RAM , mientras que la pantalla está activada ( Activar para un mejor rendimiento @ ligero riesgo de posible pérdida de datos si falla o pérdida repentina de potencia) Kernel Same-Page Merge Intelli-KSM KSM es una característica de-duplicación de memoria de ahorro . la makina KSM escanea periódicamente aquellas áreas de memoria de usuario que se han registrado en él , en busca de páginas de contenido idéntico que pueden ser sustituidos por una única página protegida contra escritura . Es útil en el runtime de android que genera muchas instancias de los mismos datos! Battery Controls Battery Temperature Throttling Esta opción le permite reducir la frecuencia de la CPU para reducir la acumulación de calor durante la carga y cuando la CPU este a tope . Las baterías de iones de litio están optimizadas para funcionar a menos de 55 grados centígrados. Con esto configuraremos a que temperatura exacta queremos que entre una frecuencia mas baja. Protocolos TCP/IP y Algoritmos de control Congestion: TCP / IP es un conjunto básico de protocolos de comunicación utilizados para transferir datos a través de Internet y redes similares. Los paquetes IP son el vehículo que los dispositivos utilizan para transferir datos entre un programa o aplicación y un servicio web. Ellos se componen de una cabecera, que contiene la dirección de origen / destinatario (entre otras cosas), y una carga útil, que contiene los datos reales. TCP, parte de la capa de transporte de Internet, proporciona la comunicación intermedia entre una aplicación y un servidor. Cuando el envío de grandes cantidades de datos de un programa puede emitir una única solicitud a TCP en lugar de dividir los datos en una serie de paquetes IP y peticiones. Debido a la congestión de la red y otros factores de los paquetes IP a menudo se pierden. TCP mantiene la entrega ordenada de paquetes mediante la detección de la pérdida de paquetes, solicitando retransmisión, la reordenación de los datos, y la minimización de congestión de la red. Cuando un host recibe un flujo de paquetes que vuelve a ensamblar los datos en la secuencia que fue enviado originalmente. Una vez que el receptor confrims la solidez de los datos que envía un paquete de reconocimiento para su recuperación, asi evitar la sobrecarga de la conexión entre un programa y uma camtidad de paquetes enviados, debe ocurrir antes de que más paquetes puedan ser enviados o recibidos. Para cada conexión TCP mantiene una ventana de congestión. La ventana de congestión TCP se mantiene por el remitente y se usa para prevenir la red la congestión / sobrecarga debido a la pérdida de paquetes. Cuando lo paquetes se reciben el tamaño de la ventana de congestión TCP aumenta exponencialmente hasta que un tiempo de espera se produce o el receptor alcanza su límite de ancho de banda. Por lo tanto, a medida que más paquetes se reconocieron el tamaño máximo de segmento (especifica el más grande cantidad de datos en un único segmento TCP) de la ventana de congestión se hace más grande; cada vez de ida y vuelta el tamaño máximo de segmento duplica. Un mecanismo llamado "Slowstart" controla el tamaño máximo de segmento de la ventana de congestión TCP. Para evitar que la red algoritmos para evitar la congestión de TCP sobrecarga modifican ventana TCP tamaño ", de comienzo lento", y el umbral de comienzo lento. Por lo tanto, los algoritmos de evitación de la congestión de TCP tienen un impacto significativo en la velocidad de entrega de paquetes entre un programa de aplicación y un servicio de alojamiento web. Descripciones:
(Click para mostrar/ocultar)
Última edición por alexret Día 24/04/15 a las 18:24:17 |
Los siguientes 6 usuarios han agradecido a su comentario: | ||
#4
|
||||
|
||||
Muy buen trabajo alexret. Gracias y Saludos
![]() |
#5
|
||||
|
||||
Alex, yo pondría mas informacion. Sobre todo lo ideal. Me refiero a los ideales para cadabcosa. Además de redireccionar al hilo de perfiles. Normalmente la gente prefiere saber que es mejor o peor , que información pura y dura.
|
Los siguientes 4 usuarios han agradecido a moludo su comentario: | ||
#6
|
||||
|
||||
Saaaaaannnntttioooooo diossss, que hilo mas de puta madreeee. La de horas de Google que me habría ahorrado de haberlo tenido hace unos años, y la de horas que me voy a ahorrar aún así!!!! Muchisimas gracias por este curro. Con esto aquí, cualquier pregunta al respecto debería ser muy esporadica. Enorme, insisto, muchas gracias moludo y alex
Enviado desde mi MI 3W mediante Tapatalk |
#7
|
||||
|
||||
Este kernel funciona, por ejemplo, con Miko 30?
Gracias y fenomenal curro te has pegado. Se agradece. |
Respuesta |
![]() |
||||||
|
«
Tema Anterior
|
Siguiente tema
»
|
|
Hora actual: 05:27:37 (GMT +2)
HTCMania: líderes desde el 2007