Tuesday, April 23, 2013

I/O (Input/Output) Schedulers pada Android


I/O (Input/Output) Schedulers (Pengaturan Masukan/Keluaran)
Sebuah metode yang digunakan oleh sebuah sistem operasi untuk menentukan blok manakah yang akan digunakan/didaftarkan sebagai penyimpanan. Pada beberapa kesempatan "Pengaturan I/O" disebut juga "Pengaturan Kepingan"

I/O Schedulers tidak begitu banyak menawarkan pilihan dan hanya sedikit yg terlihat, tapi percayalah mereka ada. Perbedaan yang bisa anda rasakan misalnya ketika membuka dan menutup aplikasi.
        Noop: Noop adalah I/O Scheduler sederhana dan untuk Android, semakin sederhana semakin baik. Tweak mengatur Noop sebagai default I/O Schedulers.
        Anticipatory: Secara pasti opsi ini belum tentu bagus untuk device android milik anda. Anticipatory dinonaktifkan karena hampir tidak ada yang menggunakan atau bahkan merekomendasikannya.
        CFQ a.k.a Completely Fair Queuing: CFQ adalah Ondemandnya (pada governor) I/O Schedulers. CFQ adalah yang paling seimbang, diskenariokan untuk menghasilkan kinerja yg baik. Tapi, dalam Android, ada sesuatu yg berbeda, CFQ bukanlah I/O Schedulers yang paling cocok. Ada banyak tweak yg tersebar di seluruh XDA untuk mengimprove CFQ.
        BFQ a.k.a Budget Fair Queueing: Banyak orang yg berasumsi dan mengidolakan I/O Scheduler tipe ini. BFQ didasarkan pada CFQ tetapi peformanya tidak seprima VR atau Simple, walaupun sudah BFQ v2. Namun, BFQ memiliki kecepatan yg bagus pada saat transfer USB).
        Deadline: Deadline sebenarnya cukup populer bersama BFQ. Deadline digunakan dalam beberapa kernel Netarchy misalnya untuk Nexus S. Namun, meskipun Deadline lebih baik daripada CFQ, Deadline masih kalah dibandingkan dengan VR. 
        VR: VR adalah I/O Scheduler yg berazazkan Deadline. Mungkin yang terbaik untuk perangkat Android dan MTD (Memory Technology Device). VR digunakan juga dalam kernel IntersectRaven untuk Nexus One. Anda mungkin akan mendapatkan dapat skor tinggi pada benchmark, tetapi VR adalah salah satu yang paling tidak stabil. Peforma berfluktuasi (naik- turun). 
        Simple: Seperti namanya, Simple adalah I/O Scheduler yang sederhana. Seperti statement sebelumnya, bahwa I/O Scheduler yg terbaik untuk Android adalah yg (paling) sederhana. Terutama untuk perangkat EMMC (Embedded Multi Media Card). Simple cukup dapat diandalkan, namun Simple tidak sebagus VR ketika di puncak peforma, Simple adalah salah satu yang terbaik dalam kategori peforma dan keiritan baterai.
        SIO: Terdapat unsur Deadline dan Noop pada SIO. Dengan kata lain, SIO adalah Deadline versi ringan, tetapi SIO tidak melakukan penyortiran apapun. Jadi SIO ditujukan untuk Random-Access Devices (seperti SSD hard disks) dimana permintaan untuk penyortiran tidak diperlukan.

Read more »

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
Read more »

Tuesday, April 2, 2013

Metamorfosis Android Jellybean 4.1


Android Jellybean 4.1
4.2.24.2.14.24.1.24.1.14.1
Fitur-fitur pengguna yang ditambahkanMemungkinkan perpindahan posisi Wi-Fi and Bluetooth toogle pada Quick Settings dengan menekan toogle cukup lamaPerbaikan hilangnya "Desember" pada aplikasi kontak "people"Widget Pengunci LayarKemampuan Rotasi pada Layar UtamaPerbaikan bug pada Orientasi LayarGoogle Now (http://youtu.be/pPqliPzHYyc)
Menunjukkan persentase dan perkiraan waktu tersisa pada notifikasi unduhan yang sedang berjalanTambahan dukungan untuk Gamepads Bluetooth dan perangkat HID joysticks360 derajat gambar dengan Photo SpherePerbaikan bug dan peningkatan performaPencarian Suara
Perubahan suara pada pengisian baterai Nirkabel dan saat baterai habisPengetikan Gestur, untuk pengetikan lebih cepatPeningkatan Kecepatan system
Aplikasi Galeri diperbarui agar bisa diakses lebih cepat dengan transisi gambar yang baruTampilan Nirkabel dengan MiracastPeningkatan Aplikasi Kamera
Peningkatan performa dan perbaikan bug (Bluetooth A2DP audio streaming)Daydream untuk menampilkan informasi layar saat tidak terpakai atau terpakuAksesbilitas : mode simbol gerakan tangan, kemampuan keyboard braille external
Multi-user untuk tablets
Tanggal Perilisan11 Februari 201327-Nov-1213-Nov-129 Oktober 201223-Jul-129-Jul-12
Read more »

Metamorfosis Android Ice Cream Sandwich 4.0


Android Ice Cream Sandwich 4.0
4.0.44.0.34.0.24.0.1Version 4.0
Fitur-fitur pengguna yang ditambahkanPeningkatan StabilitasAPI sosial stream dalam Contacts provider untuk menunjukkan asosiasi pembaruan pada contactsSedikit perbaikan Mode Pengenalan Wajah untuk membuka kunci layar (Face Unlock)Tambahan pilihan untuk "lock screen"
Kemampuan Camera yang lebih baikStabilisasi Video dan Akses API pada Resolusi Video QVGAUI menggunakan akselerasi HardwarePeningkatan masukan teks dan pengecekan ejaan
Rotasi layar yang lebih lembutKemampuann akses perbaikan API untuk screen readersPengenalan suara yang lebih baik(dictating/Voice typing)Kendali melalui data jaringan
Pembaharuan untuk Calendar providerPenjelajah Web, bisa sampai 16 tabsDukungan aplikasi Email EAS v14
Pembaharuan launcher (kustomisasi)WI-FI Direct
Aplikasi Android Beam untuk transfer data melalui NFCProfil Kondisi Kinerja BlueTooth
Tanggal Perilisan28 Maret 201216 Desember 201128-Nov-1119 Oktober 2011
Read more »

Metamorfosis Android Honeycomb 3.0


Android Versi 3.0 Honeycomb
3.2.63.2.43.2.23.2.13.23.1Version 3.0
Fitur-fitur pengguna yang ditambahkanSedikit perbaikan Tambahan"Pay as you go" untuk tabletSedikit perbaikan Pembaharuan untuk Android Market, termasuk kemudahan pembaharuannyaOptimalisasi untuk banyaknya varian TabletPengembangan UI (User Interface)Dukungan untuk Processor Multi core
Pembaharuan untuk Google BooksKompatibilitas pada Mode Tampilan (zoom for fixed-sized apps)Aksesoris Terbuka untuk APIPerbaikan kompatibilitas untuk tablet
Peningkatan Wi-FiSinkronisasi Media dari SD cardUSB host APIPerubahan Tampilan 3D
Peningkatan prediksi pada penulisan tangan Bahasa ChinaDukungan untuk Mouse, Joysticks, Gamepads.
Home screen widgets yang bisa diganti ukurannyaKustomisasi homescreens
Notifikasi untuk modul MTPPenglihatan Aplikasi applications terkini
RTP API untuk audioPerbaikan tampilan keyboard
Protokol transport Media/Picture
video chat Google Talk
Google eBooks
"Private browsing"
System-wide Clipboard
HTTP Live streaming
Tanggal Perilisan15 Februari 201215 Desember 201130-Sep-1120-Sep-1115 Juy 201110 Mei 201122 Februari 2011
Read more »

Metamorfosis Android Gingerbread 2.3


Android Versi 2.3 Gingerbread
2.3.72.3.62.3.52.3.42.3.32.3
Fitur-fitur pengguna yang ditambahkanDukungan Google Wallet pada Nexus S 4GPerbaikan pada fitur Voice search / Pencarian SuaraPeningkatan kekuatan jaringan untuk Nexus S 4GVoice atau video chat menggunakan Google TalkPerubahan UI (User Interface
Perbaikan masalah Bluetooth pada Samsung Galaxy SPeningkatan penggunaan keyboard
Peningkatan aplikasi GmailPeningkatan fitur copy/paste
Peningkatan pengaturan sumberdaya
Fitur Jejaring Sosial
Dukungan Near Field Communication
Dukungan untuk VoIP/SIP lokal
Dukungan Video call
Tanggal Perilisan25-Jul-1110 Mei 20119 Februari 20116 Desember 2010
Read more »