0 votos

¿Cuál es el gobernador de frecuencia de la CPU por defecto de la versión SAMSUNG GALAXY S4 GT-I9500 Octacore?

He estado jugando con los gobernadores CPUFreq de la versión octacore del Samsung Galaxy S4 y me olvidé de lo que era el dispositivo gobernador por defecto fue configurado para operar en por Samsung?

1 votos

¿Qué método ha utilizado para fijar los reguladores? ¿Ha visto esta pregunta ?

0 votos

Creo que el gobernador OnDemand es el predeterminado, pero no estoy 100% seguro.

0 votos

@ dotVezz He rooteado el dispositivo usando oDin y estoy escribiendo en /sys/devices/system/cpu/cpuX/cpufreq/scaling_governor el gobernador requerido, pero se me olvidó cuál era por defecto. En Quadcore (GT-I9500) es onDemand pero no estoy seguro en este dispositivo. Estoy haciendo algunos experimentos relacionados con el consumo de energía y necesito mantenerlo lo más cerca posible de la configuración por defecto.

1voto

LieX Puntos 141

El gobernador por defecto en el GT-I9500 se llama "ondemand-sec". Estoy utilizando el firmware XXUEMJ9 (Android 4.3). Es una versión modificada del gobernador ondemand. Aquí hay un listado en /sys/devices/system/cpu/cpufreq :

root@ja3g:/sys/devices/system/cpu/cpufreq # ls -al
drwxr-xr-x    5 0        0                0 Nov 14 12:38 .
drwxr-xr-x    9 0        0                0 Nov 14 12:38 ..
drwxr-xr-x    2 0        0                0 Nov 14 12:38 iks-cpufreq
drwxr-xr-x    2 0        0                0 Nov 14 12:38 ondemand
drwxrwxrwx    2 0        0                0 Nov 14 12:39 ondemand-sec

root@ja3g:/sys/devices/system/cpu/cpu0/cpufreq # cat scaling_governor          
ondemand-sec

Asignaciones de frecuencia

En cuanto a qué frecuencia activa qué núcleos, no recuerdo si se puede consultar a través de sysfs pero lo recuerdo:

  • Por debajo de 600 Mhz, sólo los núcleos A7 están activos, y funcionan a un factor de 2. Por ejemplo, a 400 Mhz, los núcleos A7 funcionan realmente a 800 Mhz.
  • Por encima de 600 Mhz, sólo los núcleos A15 están activos, y funcionan a un factor 1x. Por ejemplo, a 1,2 Ghz, los núcleos A15 funcionan realmente a 1,2 Ghz.

La asignación de frecuencias puede encontrarse en las fuentes del núcleo en drivers/cpufreq/exynos-ikcs-cpufreq.c , alrededor de la línea ~56:

#define ACTUAL_FREQ(x, cur) ((cur == CA7) ? (x) << 1 : (x))
#define VIRT_FREQ(x, cur) ((cur == CA7) ? (x) >> 1 : (x))

La primera línea encuentra la frecuencia real del núcleo. Si el núcleo actual es un A7, entonces realizamos un desplazamiento de bits en la "frecuencia virtual" por 1 a la izquierda. Esto es en efecto una multiplicación por 2.

Gran parte del resto del código se ocupa de consultar las frecuencias de CPU soportadas por cada tipo de núcleo y de fusionarlas para obtener el resultado cpufreq tabla (ver cpufreq_merge_tables alrededor de la línea 197).

Puede encontrar más información sobre cómo hacerlo en este conjunto de diapositivas por Linaro.

Estado del núcleo

Puede comprobar qué núcleos están activos utilizando un nodo del dispositivo en /dev/bL_status .

root@ja3g:/dev # cat bL_status
        0 1 2 3 L2 CCI
[A15]   0 0 0 0  0
[A7]    1 1 1 1  1

La salida anterior indica que sólo los núcleos A7 están activos.

0 votos

Oye, ¿cómo puedo verificar esta información que has proporcionado? ¿Hay alguna forma de saber cuándo el sistema cambia de núcleos A7 a A15 y cómo asegurarse de que el tiempo reportado de funcionamiento a 400 MHz es realmente de 800 MHz?

0 votos

Puedes saber cuándo el sistema cambia de los núcleos A7 a los A15 ejecutando cat /dev/bL_status . Modifiqué mi respuesta con la salida. Sin embargo, para verificar, creo que podría necesitar comprobar de nuevo en la fuente del kernel.

0 votos

Hei, Significa que tengo que compensar las frecuencias, por ejemplo estaba ejecutando una llamada de Skype a través de WLAN y escribí un script que estaba leyendo /sys/devices/system/cpuX/cpufreq/stats/time_in_state y me di cuenta de que los cuatro núcleos estaban funcionando a 600 MHz todo el tiempo, por lo que significa que la frecuencia real era de 1,2 GHz y en realidad A7 estaban operando a 1,2 GHz? Tu respuesta me ha creado más preguntas, ¿puedes comprobar esto? pregunta también. tnx

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X