Related
A lot of people have a tough time with Hero/Sense ROMs. I thought I'd make a guide on what I do to help others out. This is not definitive but it's my personal way of doing things. Comments, tips and suggestions are welcome here. I will update this with some more info as I go along.
I have a MT3G but this is the same for G1.
**Firerat has really comprehensive guides for A2SD and other tweaks. Please check his thread for more info. Also, his post about setcpu profiles is a must read.
First, get a ROM. I'm currently playing with KingKlick's Legend Port and Vegaman's kernel update.zip. This guide applies to any Hero ROM though.
Table of Contents / Overview
First things first
Get your task killers in order (TasKiller, AutoKiller, etc.)
MyBackup Pro or similar if you use them
Autostarts-- one of my favorites. Would love to hear about a free alternative
Droidwall-- free, blocks Internet to apps you choose
Reboot, wipe Dalvik-cache, reboot
Additional steps, Misc, Errata
FIRST:
Partition your SD card. I set a 256MB swap partition and have copious memory left over even under heavy load. EXT2 is better than 3/4.
Flash the ROM, flash the kernel update after. Boot the ROM, go through set up. I always skip signing in at this point as the setup is heavy on the CPU and wait for things to settle before the memory intensive sign in process begins.
SECOND:
Okay, now I see the home screen. Install TasKiller (free/paid) with ADB, MyBackup Pro and kill all the processes except Sense. I highly recommend Autostarts (paid). It handles not only autostart processes but also event listeners and will significantly speed up the ROM. Here are the services I disable:
"After Startup"
Download Manager
My Uploads
Network Location
PC Synchronization
HTC Message Uploader
Peep
HTC Media Uploader
Flickr/FaceBook/MySpace/etc
com.htc.socialnetwork.provider
HTC Widget Download Manager
MyBackup Pro (Uploads your location to their servers at every boot!!)
"Connectivity Changed"
My Uploads
Network Location Service
HTC Message Uploader
HTC Media Uploader
com.htc.socialnetwork.provider
"Application Installed"
PC Synchronization
Pico TTS (why would text-to-speech need to run...)
If you use Slacker.. disable it completely from all "Application Changed/Installed/Removed" categories. No need in them knowing your usage..
"Screen Off"
TasKiller
Notice how (and you can watch with logcat) when an application is modified or installed, it starts up Pico TTS (text-to-speech), synchronization, etc. This is not necessary and a memory hog. You might also be thinking "but I needz muh Facebook" but you don't need it to autostart. These services will load on demand as you use them. Without them, things go a lot quicker.
THIRD: (If you use MyBackup Pro)
Now, I sign into my account with Market, accept the terms and conditions. Once things have settled and I'm able to use the Market I exit the app immediately. I use MyBackup Pro to restore my apps. Version 3 now links apps to Market so they can be updated. Pretty slick despite the fact it logs your location to their servers without your permission. Luckily Autostarts stopped that. Now there's a small catch-- MyBackup messes up the Market database. Easy fix with ADB:
Code:
# cd /data/data/com.android.vending/databases
# ls -l
[I]I summarized the output here for formatting's sake..[/I]
----rwxr-x assets.db
-rw-rw---- billing.db
-rw-rw---- webview.db
-rw-rw---- webviewCache.db
See how assets.db is owned by root and the wrong permissions? This will FC Market 10/10 times. So:
Code:
# cp assets.db BACKUPassets.db
# cp -p billing.db assets.db
# cat BACKUPassets.db | tee assets.db
# rm BACKUPassets.db
Now it will work. The theory is that we can't chown the DB due to an "unknown user" but the other files there have the correct permissions. We use cat and tee to overwrite the clone with the correct contents. It's a hack that works perfectly.
FOURTH:
I then reboot and go to the Market. Install Droidwall (free) and set it to blacklist any app that doesn't need Internet Access. I also install AdFree (free). One site that it doesn't block is flurry.com. This site is used by a lot of applications such as MoreLocale. It uploads personally identifying information about you including your location, phone number, account info, etc. without your permission. I append it to my hosts file afterward. Note that each update with AdFree will erase that entry but I use Autostarts to disable it at boot and never update.
Code:
# mount -o remount,rw /dev/block/mtdblock3 /system
# echo "127.0.0.1 flurry.com" | tee -a /system/etc/hosts
# mount -o remount,ro /dev/block/mtdblock3 /system
FIFTH:
With all the apps now installed that I want to start out with, I go back to Autostarts and disable those I don't want (pretty much all of them). I reboot into recovery mode and wipe Dalvik cache. Reboot, wait for it to cache again and all is well.
Additional Steps
You can easily lock home into memory. *thanks speedysilwady and firerat. Here's how to set this permanently:
Code:
adb pull /init.rc
[I]replace "setprop ro.HOME_APP_MEM ..." with:
[B]setprop ro.HOME_APP_MEM 1536[/B]
[/I]adb push init.rc /sdcard/init.rc
adb shell
# mount -o remount,ro rootfs /
# cat /sdcard/init.rc | tee /init.rc
# mount -o remount,rw rootfs /
# rm /sdcard/init.rc
I will update this as I go. Any comments and tricks like reducing call delays are welcome. Again, this is just how I do things. Hope it helps.
Reserved for the updates....
Reserved for more updates. Just in case.
Don't bother getting kings version just get Vegaman's 0.3 version.
It works a treat and fast as well...
EDIT= and on Vegaman's use EXT2 not EXT4 like you have to do in kings roms. EXT2 is faster then EXT4
Awesome thread! you could also use AutoKiller and Cachemate to keep things smooth as well! =]
Updated OP. I'm looking for the prioritizer script that supposedly gets incoming calls within 1-2 rings... will update when I get it figured out. I have between 40-55MB free memory according to TasKiller when no apps are running.
deuse said:
Don't bother getting kings version just get Vegaman's 0.3 version.
It works a treat and fast as well...
EDIT= and on Vegaman's use EXT2 not EXT4 like you have to do in kings roms. EXT2 is faster then EXT4
Click to expand...
Click to collapse
I agree...and great job thread creater!!!
Interesting! I will try this, how much will the speed increase be?
With what I do, I barely get any slow downs unless I run a lot of apps but I have TasKiller's mini taskbar on one of my home screens and always clear things out before I do something like web browsing, Maps, or games to keep RAM clean.
I'd love an alternative to Autostarts that's free but it is truly great. Blocking listeners causes a huge boost in speed. You will see in logcat when you install an app that all these services start running in the background like Voice Dialer, TTS, etc. That's the reason installing apps seems to peg the phone for a few minutes. Not so when you block those background services.
enatefox said:
Updated OP. I'm looking for the prioritizer script that supposedly gets incoming calls within 1-2 rings... will update when I get it figured out. I have between 40-55MB free memory according to TasKiller when no apps are running.
Click to expand...
Click to collapse
Code:
su
setprop ro.HOME_APP_MEM 1536
this will keep home in memory. I learned that one from Firerat , should make calls come in faster
from what i understand a large swap like that might offer some positive temporary results, but after time clogs up
adelco93 said:
from what i understand a large swap like that might offer some positive temporary results, but after time clogs up
Click to expand...
Click to collapse
It's bad to have a large swap and high swappiness.
I haven't had any issues. The swap partition hasn't clogged up or even gone under 100MB left for me yet. Your mileage may vary but it's what I set it to. What size/swappiness would you recommend then? 96MB is not enough, 128MB seemed like too close to the edge of what I need.
I need to make the OP not look like crap...
It is better for the life of your sdcard to have a large swap....because if you allocate say only 64mb to swap...those blocks on your sdcard are constantly being written/read and the rest isn't....better to have a swap of say 256mb so that you are evening out the stress on the blocks more.
I think Wes G or Chris S said this....but that's my paraphrase of it.
Also no difference in speed between a 32mb swap and a 256mb swap. Just depends on your sdcard's class.
enatefox said:
I haven't had any issues. The swap partition hasn't clogged up or even gone under 100MB left for me yet. Your mileage may vary but it's what I set it to. What size/swappiness would you recommend then? 96MB is not enough, 128MB seemed like too close to the edge of what I need.
I need to make the OP not look like crap...
Click to expand...
Click to collapse
60 at most 80 or 100 is to much
G1ForFun said:
Also no difference in speed between a 32mb swap and a 256mb swap. Just depends on your sdcard's class.
Click to expand...
Click to collapse
If we were talking about computers then swap would be same size as ram, it's better to have no swap at all then to have one
Read some of this:
https://help.ubuntu.com/community/SwapFaq
G1ForFun said:
It is better for the life of your sdcard to have a large swap....because if you allocate say only 64mb to swap...those blocks on your sdcard are constantly being written/read and the rest isn't....better to have a swap of say 256mb so that you are evening out the stress on the blocks more.
I think Wes G or Chris S said this....but that's my paraphrase of it.
Also no difference in speed between a 32mb swap and a 256mb swap. Just depends on your sdcard's class.
Click to expand...
Click to collapse
Try Fireat
But for purposes of speed, a large swap partition will get full eventually, and when it does, have fun trying to use your phone. It gets slower because swap has to "dig" through more files to get what you want, the more files it has to dig through, the slower it is. However, you won't notice this if you reboot often (and I guess 5% of Android users reboot daily)
is there a way to enable compache on any of these hero roms?
speedysilwady said:
is there a way to enable compache on any of these hero roms?
Click to expand...
Click to collapse
The user.conf (if it is activated on the rom)
JAguirre1231 said:
The user.conf (if it is activated on the rom)
Click to expand...
Click to collapse
The thing is im not sure if its activated in any of the newer sense roms, i never heard it mentioned, so i figured id ask. ill go check the user.conf...
speedysilwady said:
The thing is im not sure if its activated in any of the newer sense roms, i never heard it mentioned, so i figured id ask. ill go check the user.conf...
Click to expand...
Click to collapse
None of newer ones use it for a reason, you would use back-swapping instead(Cc+swap)
I have been using the latests builds to see if they mitigate a common problem in our devices (mine is a Polaris). The insufficient memory makes it lag until forever when switching amongst applications, not only the heavy ones, but also the supposed light applications like Messaging, Phone, Contacts, etc.
The system has to work under really hard conditions: 20 - 28 MB when starting up. Every application I run is a fire proof. Applications like Navigation makes our devices literally crawl and bite the dust. Not far away, I was driving and tried to play some music at the same time. It was impossible. The waiting was unbearable and it finally hung like a pro.
My question is: is there any chance to free up memory or use it more efficiently in order to avoid these undesirable situations?
Did polaris get back some memory with Froyo kernel like vogue did? From the video buffer or something... what res do you run at?
I'm running at 240x320 - 120 dpi
I made a screenshot of a "free" command in a terminal (see attachment image).
My kernel is this one (converted with Atools):
http://androidhtc.git.sourceforge.n...=2.6.32/VOGUIMG-320-FROYO-10-4-10.NBH;hb=HEAD
Thanks for your interest!
Im not sure.. but is there a way to use the sd as ram?
I think its not fast enough, but i havent seen any "benchmarks" yet how fast the ram on the polaris works.
Maby its slower but fast enough to work as swap etc?
Enabling compcache will help you.
Still, our little devices cannot multitask very well with Android, but I can navigate and play music at the same time, with compcache.
You will need drivers that match your kernel, in /system/lib/modules. I have packaged some in the first post of this thread that should work for each of the two popular kernel versions.
n2rjt said:
Enabling compcache will help you.
Still, our little devices cannot multitask very well with Android, but I can navigate and play music at the same time, with compcache.
You will need drivers that match your kernel, in /system/lib/modules. I have packaged some in the first post of this thread that should work for each of the two popular kernel versions.
Click to expand...
Click to collapse
Alright, I'm downloading the modules for 2.6.32. After applying the update, what should I do to enable compcache? Some time ago, this setting was in Spare Parts.
SuperJMN said:
Alright, I'm downloading the modules for 2.6.32. After applying the update, what should I do to enable compcache? Some time ago, this setting was in Spare Parts.
Click to expand...
Click to collapse
Open terminal
type: Su
and then
compcache.sh enable
-Arturo- said:
Open terminal
type: Su
and then
compcache.sh enable
Click to expand...
Click to collapse
any way to confirm that it worked?
margosmark said:
any way to confirm that it worked?
Click to expand...
Click to collapse
type FREE in terminal and look under swap if it shows zero then it's not active.
-Arturo- said:
type FREE in terminal and look under swap if it shows zero then it's not active.
Click to expand...
Click to collapse
yea, try doing free from a terminal you should have an amount of memory for the swap row
For testing...
Thank you SuperJMN for this thread : I hope this help us for better use of our phone.
Like you, when I try to use my GPS navigation (Navigon or Igo8) I'm bored that's too slow !! Impossible to change anything if I want...
I try now with Compcache enable, I can see 130024 (total and 104156 used) instead of 104024 : swap = 26000
Cheers.
manu33xtro said:
Thank you SuperJMN for this thread : I hope this help us for better use of our phone.
Like you, when I try to use my GPS navigation (Navigon or Igo8) I'm bored that's too slow !! Impossible to change anything if I want...
I try now with Compcache enable, I can see 130024 (total and 104156 used) instead of 104024 : swap = 26000
Cheers.
Click to expand...
Click to collapse
any better luck with comcache on??
Report
I installed this update for my .32 kernel (dated September, the 30th):
http://forum.xda-developers.com/attachment.php?attachmentid=409422&d=1285714954
My build is the latest: http://sourceforge.net/projects/androidhtc/files/system-froyo-01-10-10_16.tgz/download
When I open a terminal and type
su
compcache.sh enable
it states that compcache will be enable in 120 seconds.
After that time, a free command doesn't reveal any change.
I've also tried typing
su
compcache.sh start
When doing this, it processes the command and after 30 seconds or so, some lines are displayed:
Code:
insmod: can't insert '/system/lib/modules/lzo_compress.ko': File exist
insmod: can't insert '/system/lib/modules/lzo_decompress.ko': File exist
insmod: can't insert '/system/lib/modules/ramzswap_compress.ko': File exist
swapon: /dev/block/ramzswap0: Function not implemented
vm.swappiness = 30
After that, a free command doesn't reveal any change, too.
SuperJMN said:
I installed this update for my .32 kernel (dated September, the 30th):
http://forum.xda-developers.com/attachment.php?attachmentid=409422&d=1285714954
My build is the latest: http://sourceforge.net/projects/androidhtc/files/system-froyo-01-10-10_16.tgz/download
When I open a terminal and type
su
compcache.sh enable
it states that compcache will be enable in 120 seconds.
After that time, a free command doesn't reveal any change.
I've also tried typing
su
compcache.sh start
When doing this, it processes the command and after 30 seconds or so, some lines are displayed:
Code:
insmod: can't insert '/system/lib/modules/lzo_compress.ko': File exist
insmod: can't insert '/system/lib/modules/lzo_decompress.ko': File exist
insmod: can't insert '/system/lib/modules/ramzswap_compress.ko': File exist
swapon: /dev/block/ramzswap0: Function not implemented
vm.swappiness = 30
After that, a free command doesn't reveal any change, too.
Click to expand...
Click to collapse
Try this one
http://dl.dropbox.com/u/7688082/androidupdate.tar
Also is terminal added to the white list in super user app.?
Try with this update...
l1q1d said:
Try with this update...
Click to expand...
Click to collapse
It worked! Thanks!
By the way, the touchscreen behaves erratically with 4-oct NBH. Test with calibration app and tap the screen. You will notice abrupt lines.
Edit: if you want to see which behavior I'm referring to, watch this video: http://www.youtube.com/watch?v=DPLu41BUB1Y
It happened sometime in the past, but with this one it happens the same (although the abruptness is not as much as in this video).
Edit 2: Strangely enough, it is fixed on reboot, but after some time running the touchscreen starts to behave crappy again. It happens with the newest .NBHs made in October.
Had a few minutes today to play around and wrote a few quick programs in native code to overclock the OMAP4430 to run at 1.1GHz or 1.2GHz instead of the stock 1GHz. You need to force the CPU to run at it's highest clock rate at all times if you want to verify that it works but this is not required if you take my word for it. Long story short, it is possible to change the maximum clock speed by directly manipulating the registers responsible for the clocking of the OMAP4430 but doing so in this manner doesn't alter the frequency tables that the kernel looks to, so as a result the phone thinks it is still capping out at 1000MHz. I'm working on this, don't worry.
This requires root privileges. To set the max clockspeed to 1.1GHz, run "1100" from the adb shell or terminal. Make sure the permissions are set to 755, ie: "chmod 755 1100" in the terminal in the directory you have placed the executable. (I just placed them both in /data/local/)
To reset it back to 1GHz, run "1000", same permissions as before.
To try out 1.2GHz, use "1200". 1.3GHz, use "1300".
It doesn't survive a reboot, so it won't do much damage. That being said, I take no responsibility whatsoever for any damage done to your phone, this is extremely experimental. I also take no credit for this, yang.felix was the one who figured out how to do this first:
http://forum.xda-developers.com/showthread.php?p=17669227#post17669227
Now, the real fun part is making this persist a reboot, and notify the kernel about the changes so that overclocking/underclocking can be easily performed with SetCPU or other apps.
**** EDIT ****
I removed the 1400 and 1500 binaries because in layman's terms... I screwed up. I don't have much time to work on this tonight but I'll try and put something better up; in the meantime, I removed the binaries because they are useless. I'm suspicious that the 1300 binary is destined to fail as well but apparently some of you out there are able to execute it without an immediate reboot so maybe it is a voltage problem. I'll keep you all posted.
**** N00B INSTRUCTIONS ****
Here's how I do it. If you don't already have them, I suggest downloading the following from the Market: "SetCPU", "Root Explorer" and "Better Terminal Emulator". I bought them; the $5 or so was well spent as these three apps are probably ones that I use the most. If you don't want to pay, you can find SetCPU here on xda-developers if you search for it; Root Explorer you'll have to pony up the $1.99 or whatever it is, Better Terminal Emulator you can do without if you look for "Terminal Emulator" in the Market.
Connect your phone via USB to your PC, select from the drop-down in your status bar "USB Storage" or whatever it says, and browse to your phone on your PC. Unzip the attachment from the first post to the root of your sdcard, ie: don't unzip it into any folders after browsing to your phone on your PC, just put them in the root of the drive. You can put them in whatever folder you like but if you want to keep it simple, don't bother putting them in a random folder unless you know what you're doing.
First, open up SetCPU and slide the sliders for Maximum and Minimum all the way to 1000. You can leave everything else alone, after sliding the bars just exit the app. This step is important so don't skip it.
Open Root Explorer. Navigate to "/system/xbin". Press the button at the top that says "Mount RW". This will allow you to save the binaries in this folder as it is normally mounted as read-only.
Now, open Better Terminal Emulator (or whichever terminal program you like, or even use adb if you are so inclined... although if you know how to use adb the following probably goes without saying) and assuming you followed my instructions earlier and saved the files "1000", "1100" and "1200" to the root of your sdcard, type the following commands in, pushing Enter/Return after each one:
Code:
su
(Click on Allow)
cd /sdcard
cp 1000 /system/xbin/
cp 1100 /system/xbin/
cp 1200 /system/xbin/
cd /system/xbin
chmod 755 1000
chmod 755 1100
chmod 755 1200
Now you can run the binaries from anywhere in your terminal without the requirement of being in the folder you've saved them because /system/xbin is typically included in your $PATH variable. Simply put, your phone always looks in this folder for any executable file you try to run if it doesn't find it in the current working directory.
In order to run "1000", simply type:
Code:
1000
And push Enter. You can do this from anywhere on your phone. You should see a message that says your phone has been reset to 1GHz.
To run "1100", you guessed it:
Code:
1100
Rinse and repeat.
Thank you. Works great, love it. I like the confirmation, noticing a solid performance increase and my phone doesn't seem to be heating up any more than normal after a few hours use.
Thanks! Will this work with the XT862 too?
I don't see why not; both the XT860 and XT862 have the same OMAP4430 chipset so the memory addresses tweaked in order to increase the maximum clock frequency ought to be identical.
Sent from my XT860 using xda premium
Never mind my problem was that I accidentally set the permissions to 775 not 755.
AcidRoot said:
Just tested on the XT862, it froze the device and required a reboot.
Click to expand...
Click to collapse
Just tested on my XT862. works fine, no reboot. make sure you have setcpu set to performance mode, and in the terminal (move to directory where the files are located) and run chmod 755 1100
---------- Post added at 03:35 PM ---------- Previous post was at 03:32 PM ----------
To the OP, what ROM are you running? I'm running Liberty, at 1100mhz, and I'm getting 35 MFLOPs single thread, 25 multi thread..
Keeps saying aborted
Sent from my DROID3 using XDA App
what do i put in adb to make this work. this is good news have been waiting to see this oc thanks.
oostah said:
what do i put in adb to make this work. this is good news have been waiting to see this oc thanks.
Click to expand...
Click to collapse
Read the whole first post, 2nd or 3rd paragraph answers your question 100%
ChaoticWeaponry said:
Just tested on my XT862. works fine, no reboot. make sure you have setcpu set to performance mode, and in the terminal (move to directory where the files are located) and run chmod 755 1100
---------- Post added at 03:35 PM ---------- Previous post was at 03:32 PM ----------
To the OP, what ROM are you running? I'm running Liberty, at 1100mhz, and I'm getting 35 MFLOPs single thread, 25 multi thread..
Click to expand...
Click to collapse
That's about what mine gets without the overclock sometimes higher/lower. 36 multi and 43 single just now, was as low as 8 yesterday with an average of 30. On liberty also.
Edit: haven't tried it yet
Slow down
I am noticing a consistent slow down when I perform the overclock. I did several tests and dropped the lowest and highest values and took the average. My single-thread (st) and multi-thread (mt) results for stock 1000 are 41st/49mt and for the overclock 1100 they are 38st/45mt. I am running stock ota gingerbread. Any ideas?
Not sure what I was thinking when I mentioned my Linpack results earlier; I'm getting nowhere near 75 MFlops. Before setting the max clock frequency to 1100MHz I consistently get a rate of about 27 MFlops, increasing to about 33 MFlops afterwards. Could have sworn I remembered it being higher but I must have been mistaken.
The Linpack results are highly subjective to quite a few other factors though and isn't very indicative of much but since it's a rather quick benchmark it is pretty easy to see that there is a significant increase in performance that isn't attributed to random error.
It shouldn't be too much more work to be able to alter the clock speed in a way where SetCPU or other clock-related applications can see and manipulate the hardware but I haven't had much free time at all lately and was pretty happy I was able to get this working.
It would be really nice to not have to rely on forcing the OMAP4430 to run full out with the "performance" governor but this was really just a proof of concept for me.
Sent from my XT860 using xda premium
we should be able to go to 1.2 with no problems on all of our phones. the RAZR is 1.2 with the same processor we have in the D3.
Rick#2 said:
Not sure what I was thinking when I mentioned my Linpack results earlier; I'm getting nowhere near 75 MFlops. Before setting the max clock frequency to 1100MHz I consistently get a rate of about 27 MFlops, increasing to about 33 MFlops afterwards. Could have sworn I remembered it being higher but I must have been mistaken.
The Linpack results are highly subjective to quite a few other factors though and isn't very indicative of much
Click to expand...
Click to collapse
Increase from 1000 to 1100 = 10%, 27 to 33 >= 10%. Better than can be expected imo.
Stock bell I'm getting ~43 single, ~67(saw a few 70+) multi at 1ghz
at 1.1ghz I'm getting ~48 single , ~78 multi, solid improvement averaged over 10 runs.
I'm running CM7.1, and when I try running 1100, it says "can't open /dev/mem/"
diceroll123 said:
I'm running CM7.1, and when I try running 1100, it says "can't open /dev/mem/"
Click to expand...
Click to collapse
Are you trying to run it as root? "su" first
did you run chmod 755 1100? I would like to see the phone go to 1.2, as idroidnow said it is the same processor. Its amazing that the razr and d3 have such similar specs, and the razr bumped out 5501 on my benchmark, and stock d3 only grabbed 3500
Willis111 said:
Are you trying to run it as root? "su" first
Click to expand...
Click to collapse
Teehee, woopsie.
All it does after that is ask for SU permission, and nothing is output afterward. That's...normal, yes? ಠ_ಠ
diceroll123 said:
Teehee, woopsie.
All it does after that is ask for SU permission, and nothing is output afterward. That's...normal, yes? ಠ_ಠ
Click to expand...
Click to collapse
Yes, when you type "su" into a command prompt(gives you root) it might make the prompt look a little different but there's no confirmation that it worked, there would be if it didn't though. Once you're root it should work no problems, without root it will throw up errors about anything that it tries to change and perhaps some things that it just tries to read even.
Willis111 said:
Yes, when you type "su" into a command prompt(gives you root) it might make the prompt look a little different but there's no confirmation that it worked, there would be if it didn't though. Once you're root it should work no problems, without root it will throw up errors about anything that it tries to change and perhaps some things that it just tries to read even.
Click to expand...
Click to collapse
Wonderful! I haven't been using my phone much today, but I'm sure I'll notice a slight difference. Thanks!
Guys, I need a help. Tried everything, but still facing big lag especially when I click on dialer, contacts or messages (waiting couple of secs until they show up). This is more obvious when I click right after I 'woke up' my phone from deep sleep.
I'm using stock 20b with Iodak v8 kernel (tried v9 as well, but due to bluetooth and fm radio issue on stock, reverted to v8). Also, I did everything what I could found to improve performace: disabled and then deleted MLT, did a full wipe of everything (clean install), installed only apps that I need, turned off 3g, data and gps (only WiFi is on), installed Greenify and so on..
My current setup of kernel is following:
Governor: interactive (tried ondemand, but was even worst)
Max: 1600000
Min/Max Screen Off: 760000
Scheduler: SIO
CPUQuiet Power: userspace (noticed that only 3 cores are online instead of 4)
I appreciate any help, but please, don't tell me to search, 'cause I did. As for the other custom roms, I tried CM, but I prefer more stock, mostly because of Gallery, Polaris and FM Radio Apps.
Guys, is there any way to fix this lag issue? I don't care much for the battery, since this lag drives me crazy.
Thanks in advance.
Vladimir
vladja10 said:
Guys, I need a help. Tried everything, but still facing big lag especially when I click on dialer, contacts or messages (waiting couple of secs until they show up). This is more obvious when I click right after I 'woke up' my phone from deep sleep.
I'm using stock 20b with Iodak v8 kernel (tried v9 as well, but due to bluetooth and fm radio issue on stock, reverted to v8). Also, I did everything what I could found to improve performace: disabled and then deleted MLT, did a full wipe of everything (clean install), installed only apps that I need, turned off 3g, data and gps (only WiFi is on), installed Greenify and so on..
My current setup of kernel is following:
Governor: interactive (tried ondemand, but was even worst)
Max: 1600000
Min/Max Screen Off: 760000
Scheduler: SIO
CPUQuiet Power: userspace (noticed that only 3 cores are online instead of 4)
I appreciate any help, but please, don't tell me to search, 'cause I did. As for the other custom roms, I tried CM, but I prefer more stock, mostly because of Gallery, Polaris and FM Radio Apps.
Guys, is there any way to fix this lag issue? I don't care much for the battery, since this lag drives me crazy.
Thanks in advance.
Vladimir
Click to expand...
Click to collapse
This is "normal" for system apps. Download custom apps from google store like ExDialer,GOSms.. That will resolve your lag.. When you install those apps from store, use titanium backup to freeze stock apps(dialer,contacts,messages).
@vladja10 http://forum.xda-developers.com/showpost.php?p=49272503&postcount=1986
Thanks guys, but neither of these two options helped. There's some improvements, but still pretty much laggy.
Think I found out what causing lag: synchronization. Every time when phone is synchronizing, everything is so laggy, otherwise is ok. Following accounts have sync turned on: Skype, Facebook, WhatsApp, Twitter and Google.
Does anyone of you have experienced similar problem? Is there solution for this?
vladja10 said:
Think I found out what causing lag: synchronization. Every time when phone is synchronizing, everything is so laggy, otherwise is ok. Following accounts have sync turned on: Skype, Facebook, WhatsApp, Twitter and Google.
Does anyone of you have experienced similar problem? Is there solution for this?
Click to expand...
Click to collapse
I have all those apps running in my phone, but I did not face those lags.
But ya I did felt those lags when I'm still using stock JB OS. Stock JB from LG is sucks man, you should instal another ROM.
Currently I'm using CM11 (Kitkat 4.4.2 based), its lag free and have more free RAM. (around 350 - 400MB). :good:
The difference is like heaven and hell compared with the stock ROM (I only have 150 - 200MB Free RAM).
bomerzz said:
I have all those apps running in my phone, but I did not face those lags.
But ya I did felt those lags when I'm still using stock JB OS. Stock JB from LG is sucks man, you should instal another ROM.
Currently I'm using CM11 (Kitkat 4.4.2 based), its lag free and have more free RAM. (around 350 - 400MB). :good:
The difference is like heaven and hell compared with the stock ROM (I only have 150 - 200MB Free RAM).
Click to expand...
Click to collapse
The ROM can make a difference, but it has nothing to do with "Free RAM". I wish people would stop perpetuating this myth.
Free RAM is wasted memory on an Android device. Unless you are getting below about 50MB there is not a problem as the device is designed to use as much as it can and then swap it out automatically.
I agree about CM11 though. I'm running the latest nightly and the only problem I have is the delay in waking when you press the power button
SimonTS said:
The ROM can make a difference, but it has nothing to do with "Free RAM". I wish people would stop perpetuating this myth.
Free RAM is wasted memory on an Android device. Unless you are getting below about 50MB there is not a problem as the device is designed to use as much as it can and then swap it out automatically.
I agree about CM11 though. I'm running the latest nightly and the only problem I have is the delay in waking when you press the power button
Click to expand...
Click to collapse
Well.. Sorry for my false statement and thank you for correcting it
4X HD is my very first android device. But that's what I really thought after I flashed the CM11.. Its like whoa, more free space on RAM, and it feels like I'm using a new phone
bomerzz said:
Well.. Sorry for my false statement and thank you for correcting it
4X HD is my very first android device. But that's what I really thought after I flashed the CM11.. Its like whoa, more free space on RAM, and it feels like I'm using a new phone
Click to expand...
Click to collapse
You might want a read of this;-
RAM: What it is, how it's used, and why you shouldn't care
Well, I’m afraid that I’ll be forced to get back to CM (used it once, but missed some apps such are: FM Radio, stock gallery app (couldn’t find good replacement that synced photos with google acc) and Polaris Office – these apps I use on a daily basis). Anyway, before install CM, I’ll give one more try to Stock.
I did what @ottomanhero told me, and that actually helped. But, since I used Trickstermod to tweak governors, after every single reboot, stock values would be back, so I had to use init.d script, and there comes a problem.
Here is what I did (followed instructions from Iodak's OP):
- Using ES File Explorer created folder /system/etc/init.d and set permissions to rwxr-xr-x
- Created new file in init.d folder and name it 1script (used Note++ instead of Windows editors to avoid leaving an extra space at the end of each line or an invisible invalid character)
- Then added following commands:
Code:
#!/system/bin/sh
echo "70" > /sys/devices/system/cpu/cpufreq/interactive/go_maxspeed_load
echo "70" > /sys/devices/system/cpu/cpufreq/interactive/midrange_go_maxspeed_load
echo "60000" > /sys/devices/system/cpu/cpufreq/interactive/min_sample_time
echo "20000" > /sys/devices/system/cpu/cpufreq/interactive/timer_rate
echo 200 300 400 450 500 600 > /sys/devices/system/cpu/cpu0/cpufreq/gpu_overclock
- and finally set permissions to 1script rwxr-xr-x and owner to root group to shell
So, that should be it, but didn’t work for me. Then, I installed SManager to check what’s wrong with the script, and it stated that with first 4 lines error is: no such file or directory (which is strange because exactly that's the path), and for the last line is stated: permission denied.
Did I miss something? Apologize if this question is too noob for you guys, but I’m running out of ideas.
Thanks all for your help.
Regards,
Vladimir
SimonTS said:
You might want a read of this;-
RAM: What it is, how it's used, and why you shouldn't care
Click to expand...
Click to collapse
Oh, really?
Free RAM is NOT wasted RAM.
It directly effects smoothness of the phone.Why do you think android would have Out Of Memory values if it was created to just fill up the RAM with only apps? It still needs some RAM free for caching.
---------- Post added at 03:50 PM ---------- Previous post was at 03:46 PM ----------
vladja10 said:
Well, I’m afraid that I’ll be forced to get back to CM (used it once, but missed some apps such are: FM Radio, stock gallery app (couldn’t find good replacement that synced photos with google acc) and Polaris Office – these apps I use on a daily basis). Anyway, before install CM, I’ll give one more try to Stock.
I did what @ottomanhero told me, and that actually helped. But, since I used Trickstermod to tweak governors, after every single reboot, stock values would be back, so I had to use init.d script, and there comes a problem.
- and finally set permissions to 1script rwxr-xr-x and owner to root group to shell
So, that should be it, but didn’t work for me. Then, I installed SManager to check what’s wrong with the script, and it stated that with first 4 lines error is: no such file or directory (which is strange because exactly that's the path), and for the last line is stated: permission denied.
Did I miss something? Apologize if this question is too noob for you guys, but I’m running out of ideas.
Thanks all for your help.
Regards,
Vladimir
Click to expand...
Click to collapse
Code:
#!/system/bin/sh
echo "70" > /sys/devices/system/cpu/cpufreq/interactive/go_maxspeed_load
echo "70" > /sys/devices/system/cpu/cpufreq/interactive/midrange_go_maxspeed_load
echo "60000" > /sys/devices/system/cpu/cpufreq/interactive/min_sample_time
echo "20000" > /sys/devices/system/cpu/cpufreq/interactive/timer_rate
echo "200 300 400 450 500 600" > /sys/devices/system/cpu/cpu0/cpufreq/gpu_overclock
I think the script didn't execute at boot due to last line, you forgot the quotes.And while using Smanager you gotta tick "root" or else it won't run.Try this one
ottomanhero said:
I think the script didn't execute at boot due to last line, you forgot the quotes.And while using Smanager you gotta tick "root" or else it won't run.Try this one
Click to expand...
Click to collapse
Well, you were right about the quotes (now, the new values are set), but as the other 4 lines, they still have the same error: No such file or directory, and all values are stock.
Do you have any idea what's going on? Why did it work for one, and didn't for the other lines?
http://forum.xda-developers.com/showthread.php?p=48042187#post48042187
ottomanhero said:
Oh, really?
Free RAM is NOT wasted RAM.
It directly effects smoothness of the phone.Why do you think android would have Out Of Memory values if it was created to just fill up the RAM with only apps? It still needs some RAM free for caching.
Click to expand...
Click to collapse
As I stated in my first post;-
Unless you are getting below about 50MB there is not a problem
Click to expand...
Click to collapse
Of course you need some free memory, but not hundreds of MBs of it. I notice that you pointed the same XDA quote that is used and linked to by lots of different sites when this is being discussed. To use someone else's quote - better written than I could do so myself;-
In the most simplistic terms, here is how it works, and why "free RAM is wasted RAM," but also, why you don't want all RAM in use at any given time.
If an application is not in memory when you try to open it, that application haa to be loaded into memory, thus triggering a "load time." Having the application in memory (prefetched) prevents this load time and has the application load near insantly. This is why a modern OS will preload our most commonly used applications into memory. The more memory that you have, the more applications that can be preloaded, the smoother your device will run. Clearing this memory gives you no immeidate benefit, and will actually slow your device. Idle applications in memory consume almost no resources (CPU cycles, battery power, etc.). If an application is consuming resources, that means that it is doing something. Closing it will only force the application to re-load. Using a task killer for this purpose will cause a "boxing match" where the task killer closes the application, the app reopens itself, and back and forth. THIS will consume resources.
However, you want to have some memory free. Your devices will not have enough memory to preload EVERY application, so it has to guess based on your actions. It needs to have enough memory available to quickly load an app that you may want.
Let's say that you want to load an application that requires 256MB of RAM, but you only have 128MB available. This means that the OS is going to try to clear 128MB of RAM to accomodate your app, and as your app loads, will try to clear another 128MB to return to its previous state. This clear/load/clear causes a longer load time and more slowdown than just loading an app not already in memory.
So, the ideal situation is to have most common apps in memory (pre-fetched), but enough memory available to handle 1-2 common apps that are not already pre-loaded. Touchwiz (Samsung) devices allow you to clear memory from the task manager. My S2 had about 870MB of user-available RAM, and if I trashed all apps, it would go as low as 300MB in use. This may look cool, but it is a complete waste of resources, and the OS is simply going to re-load those apps over the next 2-3 minutes anyway. And if you use a task killer to keep your device idling at 300MB of available RAM? This is simply going to slow down the device, harm the battery, and give you the same memory performance and availability that you would get with an HTC G1.
Click to expand...
Click to collapse
As the OP was stating that "I only have 150 - 200MB Free RAM" with the Stock ROM, that is definitely NOT what is causing a lag issue. If you have that much free memory (before Android goes caching stuff and not declaring it of course) then you are absolutely fine on any Android device there is.
vladja10 said:
Well, you were right about the quotes (now, the new values are set), but as the other 4 lines, they still have the same error: No such file or directory, and all values are stock.
Do you have any idea what's going on? Why did it work for one, and didn't for the other lines?
Click to expand...
Click to collapse
Maybe your partitions aren't mounted.I took these lines from pimp my rom init.d script.Create another script but it has to come before the governor tweaks script.
#!/system/bin/sh
busybox mount -o remount,noatime,noauto_da_alloc,nodiratime,barrier =0,nobh /system
busybox mount -o remount,noatime,noauto_da_alloc,nosuid,nodev,nodir atime,barrier=0,nobh /data
busybox mount -o remount,noatime,noauto_da_alloc,nosuid,nodev,nodir atime,barrier=0,nobh /cache
Click to expand...
Click to collapse
For example, name this script "93Mount" and name the governor script "94Governor" so the mounting script will be executed before governor script.
ottomanhero said:
Maybe your partitions aren't mounted.I took these lines from pimp my rom init.d script.Create another script but it has to come before the governor tweaks script.
For example, name this script "93Mount" and name the governor script "94Governor" so the mounting script will be executed before governor script.
Click to expand...
Click to collapse
Well, I did like you said and here's what I got:
Code:
exec /system/bin/sh '/etc/init.d/93Mount'
h '/etc/init.d/93Mount' <
failed: No such file or directory
failed: No such file or directorybh on /data
mount: mounting atime,barrier=0,nobh on /cache failed: Invalid argument
Any idea?
For the People who want Stock Gallery on CM and hate Aosp Gallery like Iam, check facebook offical cyanogenmod. They send a link to their new gallery next. Its in beta stase, so its not avaible yet. But if its stable itll be in play store. Its like the stock gallery app. Very beauty
Sent from my LG-P880 using xda app-developers app
vladja10 said:
Well, I did like you said and here's what I got:
Code:
exec /system/bin/sh '/etc/init.d/93Mount'
h '/etc/init.d/93Mount' <
failed: No such file or directory
failed: No such file or directorybh on /data
mount: mounting atime,barrier=0,nobh on /cache failed: Invalid argument
Any idea?
Click to expand...
Click to collapse
Well try this app https://play.google.com/store/apps/details?id=com.stericson.remount&hl=tr
EDIT : check this link out. http://forum.xda-developers.com/showthread.php?t=1381188
I'm not sure it's the right track or not, it does happen to me quite ago.
The problem is the SD (my case, luckily it's external). The system try to read files from card but it got error thus try again => laggy
I removed the card and it's alive. Try to check your internal sd. hope that help
App didn't help, I got the same error. Never mind, I give up Will use Trickstermod after every single reboot until finally find solution. Thanks @ottomanhero for all your help.
@GalaxyVolvoZ that app looks realy nice. Finally a good replacement for Stock Gallery.
@klbterminator I don't have any problems with SD, at least didn't so far
Thanks guys.
Regards,
Vladimir
hello guys and girls,
I am quite sure everyone knows and feels that our pixels are already super smooth. However few of us are never completely satisfied and are looking for ways to make the device even more smoother.
Some of you might be aware, that the sched governor, which is bound to eas, isn´t as customizable as the old interactive governor. This is the main reason we don´t have any scripts or tweaks touching the governor.
So I did some digging and finally found a tunable that allows the cpu to be even more aggressive. This will result (at least for me) in a tremendous effect on overall smoothness. Battery life will take only a slight or a grave hit, depending on the boost you choose. @Alcolawl you are free to do benchmarks
The schedtune.boost (s) reside in the directories /dev/stune, dev/stunde/foreground and dev/stune/background
You can apply values from 0 to 100.
When setting it to 100 your device will run constantly with all cores maxed out.
I found values from 2 to 10 to have the most efficient effect.
I am currently using a boost value of 8. Battery life is still awesome. But oh my god how smooth the device runs now.
Remember: you can also set the values higher yourself
For your convenience I made scripts that you can either put in system/etc/init.d or system/su.d. I am planning to refine and maybe add more tweaks to our pixels. So stay tuned and lets all work together. The script does not look like much, but try it before you judge.
Download links will be in the second post.
Instructions:
1. Download the desired file. sched2 means a boost value of 2 will be applied. sched6 means a boost value of 6 will be applied. I think you get the concept.
2. Extract the script from the download
3. Copy the script to either system/etc/init.d or system/su.d
4. set permissions to 0755 (rwxr-xr-x) via terminal or your preferred root explorer.
5. reboot and wait a minute (there is a sleep timer)
6. profit
7. to check if the script got applied correctly do in terminal on your phone
su
cat dev/stune/schedtune.boost
Attention:
su.d only works when you have working root via supersu from chainfire.
Credits:
google for integrating eas to our pixels
@Alcolawl for letting me use his scripts on the HTC 10 and inspiring me greatly in the process. If he did not exist I probably wouldn´t have looked into finding this
Even if androidfilehost says Google Pixel XL, the script will work just fine on the regular Pixel.
The all-in-one package has all scripts with boost values including 2,4,6,8 and 10.
Download:
https://www.androidfilehost.com/?w=files&flid=140794
09.01.2017
v1:
- decreased the default boost value for top app from 50 to 25
- foreground-app has a boost of 15
- schedtune.boost for all other activities (that are not getting categorized) is set to 10
v2:
- decreased the default boost value for top app from 50 to 25
- foreground-app has a boost of 12
- schedtune.boost for all other activities (that are not getting categorized) is set to 8
I did this when it was posted in the XL forum and it works exactly as described and so very easy to install. I dont think my Pixel has run any faster and with what seems like no battery hit at all even when running the 10 script!
Thanks for this! Everything does seem smoother. Installed the 10 one because of what Archangel said.
Nice, I'll try it out too, and report after a bit of messing around.
For the record: the default boost value is 0
Apparently a 10% boost is already the default on Pixel, at least for the top-app? https://www.linuxplumbersconf.org/2...ations/3693/original/LPC- EAS for Android.pdf
Boosting the foreground thread in addition to top-app may make sense (which this script seems to do), but I think background is best left alone.
I am having a problem when checking to see if this worked, (this directory isn't found) although I've gone in and* checked haha. With the file "schedtune.boost" could we also manually change that value?
Edit: I've change the permissions correctly and have tried it in both places with no luck. :/.
Edit2: placed the file in both locations and changed the filename to include ". rc" and it seems to be working now.
Gonna try out 8
Finally got it work. But it didn't work when I placed it in system/etc/init. Only worked when I put it in Su/su.d
Simer03 said:
Gonna try out 8
Finally got it work. But it didn't work when I placed it in system/etc/init. Only worked when I put it in Su/su.d
Click to expand...
Click to collapse
system/etc/init.d not just init
Freak07 said:
system/etc/init.d not just init
Click to expand...
Click to collapse
I'm not sure why but mine wouldn't work from init.d either. Neither of the two folders mentioned existed on my phone. So, I made an init.d folder, put the file in there and rebooted. In the end, it didn't work. So, I created the su.d folder where it was supposed to be and tried from there. That worked. Go figure.
Can anybody do the same commands for the regular pixel? I only have the XL
[email protected]:/ # cat dev/cpuset/cpus
0-3
[email protected]:/ # cat dev/cpuset/top-app/cpus
0-3
[email protected]:/ # cat dev/cpuset/foreground/cpus
0-2
[email protected]:/ # cat dev/cpuset/background/cpus
0
[email protected]:/ # cat dev/cpuset/system-background/cpus
0-2
[email protected]:/ # cat dev/cpuset/camera-daemon/cpus
0-3
[email protected]:/ #
Freak07 said:
Can anybody do the same commands for the regular pixel? I only have the XL
[email protected]:/ # cat dev/cpuset/cpus
0-3
[email protected]:/ # cat dev/cpuset/top-app/cpus
0-3
[email protected]:/ # cat dev/cpuset/foreground/cpus
0-2
[email protected]:/ # cat dev/cpuset/background/cpus
0
[email protected]:/ # cat dev/cpuset/system-background/cpus
0-2
[email protected]:/ # cat dev/cpuset/camera-daemon/cpus
0-3
[email protected]:/ #
Click to expand...
Click to collapse
I got the exam same values as you on the Pixel. Although I am running Franco kernel if that makes a difference.
ChugJugThug said:
I got the exam same values as you on the Pixel. Although I am running Franco kernel if that makes a difference.
Click to expand...
Click to collapse
Thank you. I was just curious I wonder why google decided to change this. Possibly they had enough reserves battery wise to bump performance a bit.
Freak07 said:
system/etc/init.d not just init
Click to expand...
Click to collapse
Didnt have init.d. only su.d
Yeah I think most on this phone will have that folder only,,,if you put it in su.d and change permission it will work.
Simer03 said:
Didnt have init.d. only su.d
Click to expand...
Click to collapse
Those who are using the 10, still looking good on battery? I'm on 8 currently and so far so good
OTTOREIKU said:
Those who are using the 10, still looking good on battery? I'm on 8 currently and so far so good
Click to expand...
Click to collapse
I've been using 10 since the day this was posted. Can't say I've noticed much change in the battery (if any). Battery life has been good.
robocuff said:
I've been using 10 since the day this was posted. Can't say I've noticed much change in the battery (if any). Battery life has been good.
Click to expand...
Click to collapse
Glad to hear! I'll be loading up 10 shortly. Ty!
Is anyone noticing any appreciable changes in performance using this script at 8 or 10? I've been running it on 8 and can't really see any noticeable changes in performance or battery. i'm just curious what other people are experiencing. (and yes, i checked cat on terminal and I am running on 8)
I am running 20 and only notice a slight decrease in battery but the performance boost is really noticeable. 10 is the best for a mixture of performance increase and battery.
ChugJugThug said:
Is anyone noticing any appreciable changes in performance using this script at 8 or 10? I've been running it on 8 and can't really see any noticeable changes in performance or battery. i'm just curious what other people are experiencing. (and yes, i checked cat on terminal and I am running on 8)
Click to expand...
Click to collapse