Tuesday, April 9, 2013

Kelebihan & Kekurangan masing2 CPU Governor


Kekuatan utama pada OS Android adalah keterbukaan dalam hal sourcecode untuk pengembangan software tersebut, sehingga kita bebas memberikan berbagai macam modifikasi pada ROM bawaan, bahkan membuat ROM sendiri dari awal.
Kebanyakan Stock ROM yang sudah dimodif atau CusROM biasanya menyediakan kernel yang mempunyai banyak CPU Governor, dalam arti sendirinya adalah sebuah kemampuan untuk  mengatur kernel dalam melakukan penyesuaian kecepatan CPU sesuai dengan kebutuhan/skema yang ada.

Ada beberapa macam CPU Governor yang perlu kita ketahui dan bisa kita terapkan pada device kita sesuai dengan kebutuhan :

1. OnDemand Governor:
Governor ini memiliki pemicu untuk meningkatkan clockspeed dengan kecepatan maksimum yang ditetapkan oleh pengguna. Jika beban CPU yang digunakan oleh pengguna mereda, maka OnDemand perlahan akan mundur ke bawah melalui steppings frekuensi kernel sampai mengendap pada frekuensi serendah mungkin, atau pengguna menjalankan task yang membutuhkan ramp.
OnDemand memiliki fluiditas antarmuka yang sangat baik karena frekuensi bias yang tinggi, tetapi juga dapat memiliki efek yang relatif negatif pada baterai dibandingkan governor lainnya. OnDemand umumnya dipilih oleh produsen smartphone karena teruji, handal, dan hampir menjamin kinerja sehalus mungkin untuk telepon.

2. Performance Governor:
Skema ini mengunci CPU pada frekuensi maksimum. Meskipun hal ini mungkin terdengar seperti ide yang tidak baik, namun ada bukti yang berkembang menunjukkan bahwa menjalankan CPU pada frekuensi maksimum terus menerus malah memungkinkan kecepatan menuju fase idle. Fase idle adalah proses dimana telepon menyelesaikan tugas yang diberikan, seperti sinkronisasi email, dan mengembalikan CPU ke keadaan daya terendah yang sangat efisien. Hal ini masih memerlukan pengujian yang ekstensif, dan kernel yang tepat untuk menerapkan CPU Governor ini.

3. Powersave Governor:
Kebalikan dari Performance Governor , Governor ini mengunci frekuensi CPU di set frekuensi terendah oleh pengguna. Dampak positifnya adalah hebatnya daya tahan baterai HH kita dengan mengorbankan kecepatan akses/baca system.

4. Conservative Governor:
Skema ini membiaskan CPU untuk memilih kecepatan CPU terendah sesering mungkin. Dengan kata lain, beban yang lebih besar dan lebih kuat harus ditempatkan pada CPU sebelum skema ini diminta untuk menaikkan kecepatan CPU. Performa yang ada tergantung dari bagaimana pengembang telah menerapkan Governor ini, dan kecepatan CPU minimal yang dipilih oleh pengguna, skema ini dapat memperkenalkan kinerja berombak. Di sisi lain, skema ini berefek baik untuk baterai.

5. Userspace Governor:
Governor ini, sangat langka bagi dunia perangkat mobile, memungkinkan setiap program yang dijalankan oleh pengguna untuk mengatur frekuensi operasi CPU. Governor ini lebih umum di pakai pada server atau PC desktop dimana sebuah aplikasi  membutuhkan otorisasi untuk mengatur CPU clockspeed.

6. Min Max
Governor ini hanya memanfaatkan frekuensi kecepatan min &max CPU berdasarkan beban kerja tidak ada frekuensi menengah yang digunakan.

7. Interactive Governor:
Skema ini memberikan CPU skala kecepatan secara dinamis dalam menanggapi beban kerja  oleh pengguna. Skema ini secara signifikan lebih responsif daripada OnDemand, karena lebih cepat memposisikan CPU pada skala maksimum. Secara teknis perbedaan antara Interactive Governor dan OnDemand adalah jangka waktu yang diperbolehkan oleh Interactive untuk memacu kinerja CPU secara maximal lebih lama daripada OnDemand (demi performa). Tentunya hal ini berpengaruh terhadap performa baterai, dan skema ini mengasumsikan bahwa ketika layar aktif maka pengguna akan segera menggunakan aplikasinya dan secara otomatis akan mengatur CPU pada kecepatan maximumnya.
Jadi pada OnDemand pengaturan skala frekuensi CPU diperlakukan layaknya antrian, sedangkan pada Interactive pengaturan skala frekuensi CPU menggunakan rangkaian/jalur yang diberikan batasan waktu oleh developer, kelebihan ini pula yang membuat Interactive bisa menghilangkan masalah “frequency bouncing” yang ada pada OnDemand. Dimana dengan pengaturan jangka waktu ini skema ini lebih bisa mendayagunakan frekuensi menengah CPU yang ada.


                       
8. InteractiveX Governor:
InteractiveX governor secara garis besar berdasarkan pada Interaktif Governor, namun ditingkatkan lagi dengan parameter waktu agar terjadi keseimbangan yang lebih baik antara baterai vs kinerja. Kelebihan lain dari skema ini adalah kemampuan untuk mengunci kecepatan CPU pada posisi terendah saat layar mati.

9. Lagfree:
Lagfree mirip dengan OnDemand. Perbedaan utama adalah optimalisasi agar lebih hemat baterai. Frekuensi menurun dan meningkat dengan sangat halus, tidak seperti ondemand yang melompat ke frekuensi 100% terlalu sering. Lagfree tidak melewatkan setiap sela frekuensi ketika meningkatkan frekuensi ke atas atau ke bawah. Perlu diingat ada kebutuhan akan sumberdaya secara mendadak, lagfree akan sedikit mengecewakan karena harus menaikkan frekuensi CPU secara bertahap. Beberapa pengguna melaporkan bahwa pemutaran video menggunakan Lagfree Governor  sedikit terputus-putus.

10. SmartassV2:
Versi 2 dari governor  dari Erasmux. Governor ini berusaha memberikan “frekuensi yang ideal”, dan ramp up yang lebih agresif untuk “frekuensi ideal” dan berkurang setelah tidak dibutuhkan. Menggunakan frekuensi yang ideal berbeda untuk layar dan layar mati, dan memposisikan skala tersebut dengan sangat cepat. SmartAssv2 tidak memiliki batas atas ketika layar mati seperti SmartAss. Jadi semua sela frekuensi yang ada bisa digunakan baik ketika layar mati maupun saat laya hidup.

11. Smartass
Didasarkan pada konsep Interacive Governor.
Kinerja dari skema ini setara dengan Minmax Governor dan  sedikit lebih responsif. Daya tahan baterai cukup baik namun sulit untuk dihitung secara tepat. Skema ini lebih banyak menggunakan frekuensi minimum saat layar mati/standby.

12. Scary
Perpaduan antara Conservative Governor dengan SmartAss fitur, skema ini membatasi frequensi yang terlalu tinggi dengan tujuan untuk mendapatkan masa pakai baterai terbaik dengan kinerja yang layak.

13. Brazilianwax:
Mirip dengan smartassV2. Ramp yang lebih agresif , kinerja jadi lebih, baterai kurang
14. SavagedZen:
Governor ini berbasis smartassV2. Mencapai keseimbangan yang baik antara performa & baterai dibandingkan dengan brazilianwax.

15. Lazy:
Governor dari Ezekeel pada dasarnya adalah sebuah ondemand dengan min_time_state parameter tambahan untuk menentukan waktu minimum CPU tetap pada frekuensi yang ada sebelum scaling up / down. Ide di sini adalah untuk menghilangkan ketidakstabilan yang disebabkan oleh perubahan frekuensi yang cepat pada Ondemand Governor. Lazy juga mempunyai parameter maximum ketika layar mat, dimana ketika fungsi ini  berjalan governor akan memilih frekuensi maximal ketika layar mati.

16. Lionheart:
Lionheart berbasis  Conservative Governor yang didasarkan pada sumber Update3 Samsung.
Perilaku Governor ini mirip dengan Performance Governor, kelemahanya adalah memakan banyak daya pada batere, sehingga daya batere akan semakin berkurang dalam waktu relatif cepat.

17. Smoothass
Versi yang lebih agresif dari SmartAss, dimana ramp up/down-nya sangat cepat. Namun skema ini menjaga frekuensi maximum saat idle/asleep lebih rendah lagi. Secara teori seharusnya lebih baik dari SmartAss, namun banyak juga yang beranggapan skema ini sama dengan SmartAss.

X Series
OnDemandX, InteractiveX and ConservativeX secara tidak resmi adalah pembaruan dari OnDemand, Interactive and Conservative. Mereka berusaha untuk memperbaiki kekurangan pada versi lama dan menambahkan fitur baru (profil saat layar tidur seperti pada SmartAss. Pada versi terbaru untuk processor multi inti, skema ini akan menon-aktifkan beberapa inti saat layar mati/sleep state (secara dramatis menambah umur baterai).
Seharusnya versi ini menghasilkan performa dan ketahanan baterai yang lebih baik daripada versi aslinya. Tapi bisa juga bersinggungan dengan Governor aslinya jika ada dalam satu kernel

No comments:

Post a Comment