Android boros baterai? Apakah tips menghemat baterai anda rasa hanya berpengaruh kecil? Bagaimana jika kita melangkah lebih lanjut dengan menghemat baterai menggunakan cara tweaking. Bagaimana langkahnya? Mari kita berbagi...
Tweak adalah sebuah fasilitas (utility) yang tersedia pada sistem operasi yang dapat mengoptimalisasikan kinerja sistem operasi
Cara I Tweak Sysctl
Tweak ini membutuhkan sysctl.conf. Apa sih sysctl.conf ini?
Karena Android berbasis linux, sama seperti di linux, di android juga terdapat file bernama sysctl.conf yang berisi parameter kernel. Dengan aplikasi Sysctl Config di android, kita bisa memodifikasi file sysctl.conf di handheld kita untuk meningkatkan performa dan memperpanjang umur batere. Maksudnya, disini membuat batere tidak cepat habis/boros.
Dalam pengaturan sysctl tidak tetap setelah reboot, sehingga kita dapat me-remount adb kemudian membuat sebuah file sysctl.conf pada pc kita dengan pengaturan ini, maka. / Adb push sysctl.conf / etc / maka kernel harus menerapkan pengaturan setiap reboot
Perlu diingat tweak ini tidak akan mempengaruhi hasil benchmark seperti quadrant benchmark. Benchmark lebih ke arah hardware dan tidak dipengaruhi oleh tweak ini.
Sebagai contoh, sebelum saya memodifikasi dengan Sysctl, android anda dengan pemakaian standar, ketika jam 6 pagi anda cabut dari charger, jam 6 sore anda ketika pulang batere tersisa 20%. Setelah dimodifikasi, jam 6 sore anda ketika pulang batere masih tersisa 50-60% .
Sekali lagi saya ingatkan Tweaking berbeda dengan Overclocking, OC lebih mengacu langsung ke Hardware sementara tweak lebih ke script yang mendorong kinerja secara keseluruhan
Dalam tweaking sysctl kita bagi lagi menjadi 3, diantaranya (Pilih salah satu):
I Dengan Paramater
Buka Terminal dan Jalankan perintah ini sebagai root.
Sebelum memulai mari kita ketahui tentang sysctl.
Sysctl Config adalah aplikasi utilitas yang biasanya terdapat di ROM2 custom terbaru atau anda bisa mendapatkannya secara gratis di android market.
Apa gunanya? Gunanya adalah untuk tweaking file Sysctl.conf dengan cara yang lebih ke brainware (anda).
Apa saja yang dibutuhkan?
1.Handheld Android (pastinya) sudah Root
2.Terinstall Busybox.
Nah sekarang kita bahas per poin parameter.
>>>Min Free KBytes (vm.min_free_kbytes), ini digunakan untuk membuat Virtual Memory (VM) Linux mempertahankan nilai minimum kilobytes. VM menggunakannya untuk menghitung nilai pages_min untuk setiap zona low memory dalam sistem. Setiap zona low memory dalam sistem mempunyai nilai free pages cadangan yang sesuai dengan ukurannya sendiri-sendiri. Nilai default poin ini adalah 2048 (bisa berbeda tergantung devicenya).
>>>Dirty Ratio (vm.dirty_ratio) dan Dirty Background Ratio (vm.dirty_background_ratio) berfungsi mengontrol seberapa sering kernel menulis data ke disk (disk dalam hal ini adalah internal sd card di sistem/handheld, bukan external sd card). Ketika aplikasi-aplikasi menulis data ke disk, Linux sebenarnya tidak menulis data langsung ke disk, tetapi linux menulisnya ke system memory dan kernel menangani kapan dan bagaimana data tersebut dimasukkan ke disk. Nilai dalam sysctl mempresentasikan prosentase, lebih tinggi prosentase yang sampeyan masukkan, lebih lama menunggu data di masukkan ke disk, sebaliknya, semakin rendah nilai prosentase yang sampeyan masukkan, data lebih sering dimasukkan ke disk. Sekarang kita ingat2 lagi, kita berhadapan dengan internal disk yaitu solid state disk, bukan disk dengan sistem piringan seperti harddisk di komputer, jadi kita bisa menahan sistem memasukkan data ke disk lebih lama daripada di disk dengan sistem piringan.(catatan kenapa menggunakan istilah linux? Karena android itu dasarnya dari linux)
>>>VFS Cache Pressure (vm.vfs_cache_pressure), nah . yang ini menarik, cache file sistem (dentry/inode) lebih penting daripada block cache dalam dirty ratio dan dirty background ratio, jadi kita menginginkan kernel untuk menggunakan lebih banyak RAM untuk cache file sistem. Ini akan meningkatkan performa sistem tanpa mengorbankan performa pada level aplikasi. Nilai defaultnya adalah 100 (dalam prosentase), yang harus dilakukan adalah merubah prosentasenya lebih rendah untuk memberitahukan kernel agar mendukung cache file sistem dan tidak men-drop-nya secara tiba-tiba.
>>>Oom Allocating Task (vm.oom_kill_allocating_task) di Sysctl diberikan opsi centang maksudnya diaktifkan atau tidak atau merepresentasikan nilai 1? / 0? atau On/Off.
Fitur ini digunakan untuk mengaktifkan atau tidak trigger untuk killing task pada situasi OOM (Out Of Memory). Kalau ini tidak dicentang/diaktifkan, OOM Killer akan memindai seluruh daftar task dan memilih task yang akan di kill berdasarkan heuristik (silahkan googling artinya hehe). Biasanya OOM akan memilih task yang memakan banyak memori (rogue memory hogging) dimana bila di kill akan melegakan memory dalam jumlah besar. Bila poin ini di aktifkan/dicentang, maka OOM Killer akan meng-kill aplikasi yang memicu kondisi OOM. Ini meminimalisir pemindaian task dimana bisa mengakibatkan sistem hang atau freeze.
Nilai2 yang harus anda masukan pada Sysctl Config? Tergantung hardware dan kenyamanan masing2.
Intinya silahkan coba nilai satu persatu. Dengan mengaktifan Sysctl, biarkan anda mencoba konfigurasi default selama 1-2 hari, bila dirasa kurang, silahkan dirubah-rubah nilainya. Ini adalah contoh parameter kernel yang digunakan.
Min Free KBytes: 4096
Dirty Ratio: 90
Dirty Background Ratio: 70
VFS Cache Pressure: 1
Oom Allocating Task: Aktif, atau nilainya 1 (0=tidak aktif)
Hasilnya seperti yang dijelaskan diatas tadi.
Dengan ROM ToolBox
Anda dapat juga menggunakan ROM Toolbox
2.Jika meminta ijin dari superuser anda klik "allow"
3.Masuk opsi performance>Kernel tweak>
4.Di Opsi sysctl conf anda bisa mengetik parameter yang anda mau
Dengan Memory Virtual
Buka Terminal dan Jalankan perintah ini sebagai root
Tweak memori virtual untuk menghemat daya ketika berjalan pada baterai:
kode:
echo 0 > /proc/sys/vm/swappiness #can be ignored if you dont use swap
echo 0 > /proc/sys/vm/dirty_expire_centisecs #can be ignored if you dont use swap
echo 0 > /proc/sys/vm/dirty_writeback_centisecs #can be ignored if you dont use swap
echo 60 > /proc/sys/vm/dirty_background_ratio
echo 95 > /proc/sys/vm/dirty_ratio
Tweak memori virtual ketika anda Charger:
kode:
echo 0 > /proc/sys/vm/swappiness #can be ignored if you dont use swap
echo 3000 > /proc/sys/vm/dirty_expire_centisecs #can be ignored if you dont use swap
echo 500 > /proc/sys/vm/dirty_writeback_centisecs #can be ignored if you dont use swap
echo 10 > /proc/sys/vm/dirty_background_ratio
echo 40 > /proc/sys/vm/dirty_ratio
Mendeteksi apps / jasa yang memerlukan kinerja lebih pada baterai / cpu:
Disini menerangkan bahwa kinerja yang memerlukan energi baterai lebih, untuk itu Anda harus menghentikan semua aplikasi yang tidak benar-benar jalan/siaga bila Anda tidak menggunakan mereka.
Jika Anda ingin menemukan aplikasi yang sedang dalam masa siaga namun anda tidak memerlukan, maka Anda dapat menggunakan:
kode:
strace -p $(pidof yourapp) # for all your running applications
ps aux | awk '{print$10,$11}' | sort -n # will list all running softs sorted by used cpu time
Secara default ketika android kehabisan memori untuk menjalankan aplikasi melalui daftar proses maka android mulai membunuh proses yang ia kira menggunakan terlalu banyak memori. Sysctl ini membuat android membunuh proses pelarian yang membuat sistem kehabisan memori bukan, yang biasanya apa yang Anda inginkan. (Ini juga akan mengurangi waktu cpu dan meningkatkan penggunaan baterai).
kode:
sysctl-w vm.oom_kill_allocating_task = 1
vfs_cache_pressure sampai 10, memberikan lebih banyak masukan ke tembolok fs dan inode untuk menghemat cpu
Pada nilai default dari vfs_cache_pressure = 100 kernel akan mencoba untuk merebut kembali dentries dan inode pada tingkat "adil" sehubungan dengan pagecache dan swapcache(sistem simpan perintah sementara) kembali. Penurunan vfs_cache_pressure menyebabkan kernel untuk lebih memilih untuk mempertahankan dentry dan cache inode. Meningkatkan vfs_cache_pressure melampaui 100 menyebabkan kernel untuk lebih memilih untuk merebut kembali dentries dan inode.
kode:
sysctl-w vm.vfs_cache_pressure = 10
NB: Anda bisa memasukan semua ini dengan /ADB shell atau terminal emulator pada android anda.
Cara II Tweak SuperCharger Script
Selain men-tweak sysctl dapat juga men-tweak dengan script super charger
1. Device harus dalam keadaan root
2. Download dan install Busybox Installer lewat market
3. Buka aplikasi Busybox Installer, lalu install busybox version 2.0 download di sini atau di sini
4. Download dan install Script Manager lewat market
5. Download script di sini
6. Buka aplikasi Script Manager, lalu tekan Menu>More>Advanced Options>Config, centang Browse as root dan export $HOME
7. Kembali ke script manager, buka script yang sudah di download di langkah no. 5, pilih “run as root” (tandai icon bergambar tengkorak), klik run
8. Tekan layar untuk memunculkan keyboard, isi dengan angka 1, tekan enter. Tunggu sampai selesai
9. Setelah selesai, isi dengan angka
Pilih salah satunya
a. 2, untuk tweak hemat baterai
b. 6, untuk tweak balance
c. 7, untuk tweak multitasking
Tekan enter. Tunggu sampai proses selesai
10. Setelah selesai, isi dengan angka 16 untuk reboot.
11. Buka root explorer, browse ke etc/init.d/ cari file 99SuperCharger ubah nama 99SuperCharger menjadi S99SuperCharger
12. Restart device.
Masih belum jelas? Silakan lihat video berikut ini:
Ini aman kan ya? gabakalan merusak android ane
BalasHapusSampai saat ni hh saya aman2 aja pakai cara itu
BalasHapusjika dlakukan dng bnar,aman tp jk anda kurang teliti maka mnjadi tdk aman,jd dyowr
Unt review,anda bs mncari info tntang cr ini di google
Met brkreasi bro :)
Saya udah nyoba tutor yang
BalasHapusCara II Tweak SuperCharger Script udah jalan bgtu udah nyampe di tutor steep11 kok gak ada ya folder init.d di directory /etc/
Mohon pencerahannya gan. Ane izin subscribe l.
Tidak semua ROM mempunyai folder init.d
BalasHapusFolder init.d biasa digunakan untuk menampung file tweak namun tidak semua ROM menyertakan folder tersebut, baik stock ROM dan beberapa custom ROM tidak terdapat folder tersebut
gan ane udah nyoba berulang kali seperti penjelasan di atas setelah aku perhatiin sewaktu progres ternyata ada file yng gak bisa di create. kayak gini pesannya : "mnt/sdcard/download/V6_SuperCharger_for_Android-update8.sh.txt[1265]: can't create temporary file /sqlite_stmt_journals/mksh.MKewC14960: No such file or directory" dan akhirnya ane k forum developnya dan nemu update terbaru scharger V6_SuperCharger_for_Android-Update9_RC8.2.sh udah ane install dan work.
BalasHapusoh ya min. untuk steep 11 dmna file 99SuperCharger diubah nama 99SuperCharger menjadi S99SuperCharger itu knpa ya mesti di ubah ? mohon pencerahannya lagi ya min.
trims untuk jwbnnya ya min :)
gan, saya udah ikutin sampai step 8 yg Tweak Supercharger, tp ko ketika mau ngetik angka 1 dan enter gak bisa ya? itu knp?
BalasHapusHmm... mungkin ada yg salah, coba ulangi sekali lagi :)
BalasHapusudah saya ulangi ikutin dari awal dan ga ada yg salah, tp ttp ga bisa.. saya pake galaxy y. apa emang ga bisa untuk galaxy y?
BalasHapusUnt gal Y saya blom mencoba, saya waktu test mnggunakan mini dan optimus
BalasHapuscuma mau share pengalaman buat hh galyoung n mo nyoba tweak supercharger pake script manager,keyboardnya ganti dlu pake yg swype...
BalasHapusThx mas bro atas shareny :-)
BalasHapusDtunggu share2 lainnya dng gal y ya, keep sharing :-)
ok, berhasil.. makasih gan :)
BalasHapusSelamat gan :)
BalasHapusRasakan perbedaannya setelah dan sebelum di tweak :D Jgn lupa kasi testimonial ye
buka sysctl settingnya gimana ya gan? lewat terminal emulator ya?
BalasHapusBisa lewat terminal emulator gan, tp kl ga mo ribet pake rom toolbox aja :D
BalasHapusmin ane pake cara rom toolbox ngikutin semua yang ada tapi engga ada perbedaannya deh min. gimana dong?
BalasHapusSemua tergantung dari penggunaan juga gan, kl terlalu banyak aplikasi yang berjalan di background tentu saja itu juga membebani asupan daya baterai :)
BalasHapusmin kalau 2 cara sekaligus d jalan kan gmn?
BalasHapusitu kalo pake ROM toolbox angka nya suka ganti sendiri min? knp ya
BalasHapusGunakan salah satu saja agar tidak terkondisi crash
BalasHapuskalo ga ada init.d nya gimana dong? (-.-"
BalasHapusCobalah unt mmbuat folder init.d :)
BalasHapusmin kl tweak supercharger scrip itu bs dipilh ketiga tiganya ga?
BalasHapus2 hemat batre
6 balance
7 multitaskking
ato cm salah satu saja
lebih optimal kl salah satu
BalasHapusbro kok 99SuperChargernya kgk bisa di rename sih ?
BalasHapussudah anda restart? renamenya setelah restart gan
BalasHapusMin saya udh ikutin tuh rutor yg ke 2 ! Tp pas d poin 11 kan masuk ke root explorer trus masuk k etc -> init.d, nah pas d folder init.d ga ada folder yg namanya 99superchanger!! Gmn nih? Mohon pencerahannya! Please!!
BalasHapusBerarti ada 2 kesimpulan, yang jelas itu gagal install dikarenakan anda salah langkah atau ada yang terlupakan atau kesimpulan kedua ROM anda tidak support terhadap cara ini :)
BalasHapusmakasi turor nya gan.
BalasHapusberhasil
:D
Sama2 gan :D
BalasHapusThx juga unt testimonialny :D
gan kok punya ane gak bisa download busybox v1.18.2 ane pake cusrom cyan gan,bantuin agan...??
BalasHapusMungkin anda bisa download secara manual gan... tapi pastikan dulu perangkat anda support sehingga dapat menjalankan aplikasi tersebut dengan sempurna :)
BalasHapus