adb shell cd /sys/module/mali/parameters # ls -l ls -l -r--r--r-- root root 4096 2011-07-05 23:54 gpu_power_state -r--r--r-- root root 4096 2011-07-05 23:54 mali_gpu_vol -r--r--r-- root root 4096 2011-07-05 23:54 mali_gpu_clk -rw-rw-r-- root root 4096 2011-07-05 23:54 mali_dvfs_control -rw-rw-r-- root root 4096 2011-07-05 23:54 mali_max_job_runtime -rw-rw-r-- root root 4096 2011-07-05 23:54 mali_hang_check_interval -rw-rw-r-- root root 4096 2011-07-05 23:54 mali_benchmark -r--r--r-- root root 4096 2011-07-05 23:54 mali_major -rw-rw-r-- root root 4096 2011-07-05 23:54 mali_debug_level # cat mali_gpu_clk cat mali_gpu_clk 160 # cat mali_gpu_vol cat mali_gpu_vol 950000前回のエントリでも書いたけど、reguratorの設定範囲をちゃんとしてあげないと、実際のクロックはkernelのコードに従ってくれませんので、設定値を変更したkernelを適用したら、上記の手段などで、現在値を確認するのがいいと思います。ちなみに上記はデフォルトのIDLE状態。Quadrantなどを実行しながらこの値をチェックすると、kernelによりこの値がstepするのがわかります。
ちなみにreguratorの範囲の設定をミスるとvoltageは1000000に固定されちゃいます。
次にCPU関連。
adb shell cd /sys/devices/system/cpu/cpu0/cpufreq # ls -l ls -l -rw-rw-rw- root root 4096 2011-07-05 20:22 cpuinfo_min_freq -rw-rw-rw- root root 4096 2011-07-05 20:22 cpuinfo_max_freq -rw-rw-rw- root root 4096 2011-07-05 20:22 cpuinfo_transition_latency -rw-rw-rw- root root 4096 2011-07-05 20:22 scaling_min_freq -rw-rw-rw- root root 4096 2011-07-05 20:22 scaling_max_freq -rw-rw-rw- root root 4096 2011-07-05 20:22 affected_cpus -rw-rw-rw- root root 4096 2011-07-05 20:22 related_cpus -rw-rw-rw- root root 4096 2011-07-05 20:22 scaling_governor -rw-rw-rw- root root 4096 2011-07-05 20:22 scaling_driver -rw-rw-rw- root root 4096 2011-07-05 20:22 scaling_available_governors -rw-rw-rw- root root 4096 2011-07-05 20:22 scaling_setspeed -rw-rw-rw- root root 4096 2011-07-05 20:22 cpuinfo_cur_freq -rw-rw-rw- root root 4096 2011-07-05 20:22 scaling_cur_freq drwxr-xr-x root root 2011-07-05 20:22 stats drw-rw-rw- root root 2011-07-05 20:22 ondemand # cat cpuinfo_cur_freq cat cpuinfo_cur_freq 100000上記は100Mhzのステップを追加したときの状態ですが、注目すべきはcpuinfo_cur_freq。APLLの設定がちゃんと入ってないと、実際のクロックは変化しないようで200Mhzあたりになります。というわけで、みなさんSetCPUの表示にだまされるわけですね。コードと注意深くみていくと100MhzのAPLLの設定値が存在してるのがわかります。昔は100Mhz - 1.0Ghzだったような感じですね。そのAPLLの設定値をそのままいただけばOKですね。
手元のSGS2はこの設定で動作してますが、CPU時間の50%程度を占める周波数が今回設定した100Mhzなので、多少の効果は認められます、絶大とまではいかないのですがね。
それにしても、だれかExynosのドキュメントとか持ってないですかねぇ。みなさん手探り上等なんでしょうか。。
えー。次回はたぶんBLN。手元では動いたかも!
2 コメント:
creamsさん
S2のBLN期待しています。
どうぞよろしくお願いします。
blogはじめて初のコメントですw。ぼちぼちやってきますので、また見に来てください。
コメントを投稿