Android OS Forum banner
1 - 20 of 24 Posts

·
Premium Member
Joined
·
92 Posts
Discussion Starter · #3 ·
OP updated with GB modded build.prop, to flash that either flash the kf2 deodexed in cwm then the performance.zip or manually push using a file explorer with root access
 

·
Premium Member
Joined
·
92 Posts
Discussion Starter · #6 ·
Flashing this does the following and more:
sets rom's heapsize to be at 32m
makes your data connection better meaning better uploads and downloads(its suppose too)
makes scrolling extremely smooth
helps ext4
enables jit
improves battery life
etc

:p
 

·
Android Beginner
Joined
·
11 Posts
JIT is enabled on Froyos by default, no need to "tweak" it.

I think Dalvik heapsize is set to 48MB by Samsung on our phone, at least on my stock KD1 it's like that. Are you sure that reducing it to 32MB is a good idea? It will use less memory but will do garbage collection more often, so the performance will suffer.

To verify default heapsize value anybody can use this command: adb shell getprop | grep heapsize

Some other settings there are questionable too. They've been circulation over the internet for a while, but they are for different phones with different radios, different amounts of memory, and even for different Android versions.

For example I really would like to know why you used ro.ril.htcmaskw1.bitmask, what is means, and is it really compatible with our radio. Especially if the name starts with "HTC"!..
 

·
Premium Member
Joined
·
92 Posts
ok first of all, jit is not always enabled on froyo by default :p

second, i have done strenuous testing with the build.prop and its values for the sgs4g and 32vm seems to be better
the whole point of this was to improve performance, speed and battery life so why would i do something to slow it down?

as for ro.rilhtcmaskw1.bitmask this is used to help improve data connection along with the other 5 or 7 lines that come with is starting with hsxpa and literally has nothing to do with htc

please before you put your opinion in know what you are talking about :p
 

·
Android Beginner
Joined
·
11 Posts
I thought Google enabled JIT on all 2.2 versions. Maybe some manufacturers chose to overwrite this but on our phone it is definitely enabled by default.

The bigger heapsize, the less often garbage collector has to run, which is definitely a good thing as the garbage collection is very expensive thing in terms of resources. There is a tradeoff between the total memory amount and the size of the heap, but on our phones 48MB seems right. It certainly should be better than 32MB. 32 was probably a tweak for some other phones with 256MB of RAM that actually increased it from even lesser default number. On our phone decreasing it doesn't make much sense, you'd only lower performance and decrease battery life in the end.

There is another tweak that stands out as a little bit excessive. It's windowsmgr.max_events_per_sec set to 200. This value tells how often Windows Managers can send events to a window. The default value is 55, which is about every 18ms. 200 changes it to 5ms. Looks too extreme, there is no need to put that much strain on the manager and consequently the CPU. It may increase responsiveness slightly, but at the cost of utilizing more CPU and battery. I'd leave this at default or at lease set it to something way more conservative, like 16-14ms (values between 60 and 70.)

Edit: As of htcmaskw1, if you re-read my post you'd notice that I was *asking* what this thing does. I still cannot google anything useful on it except people are copying it from phone to phone without much thought :) I also only finding references to this value in HTC RIL source code. Can you post a link to some description for this setting?
 

·
Premium Member
Joined
·
92 Posts
Discussion Starter · #11 ·
AsX said:
I thought Google enabled JIT on all 2.2 versions. Maybe some manufacturers chose to overwrite this but on our phone it is definitely enabled by default.

The bigger heapsize, the less often garbage collector has to run, which is definitely a good thing as the garbage collection is very expensive thing in terms of resources. There is a tradeoff between the total memory amount and the size of the heap, but on our phones 48MB seems right. It certainly should be better than 32MB. 32 was probably a tweak for some other phones with 256MB of RAM that actually increased it from even lesser default number. On our phone decreasing it doesn't make much sense, you'd only lower performance and decrease battery life in the end.

There is another tweak that stands out as a little bit excessive. It's windowsmgr.max_events_per_sec set to 200. This value tells how often Windows Managers can send events to a window. The default value is 55, which is about every 18ms. 200 changes it to 5ms. Looks too extreme, there is no need to put that much strain on the manager and consequently the CPU. It may increase responsiveness slightly, but at the cost of utilizing more CPU and battery. I'd leave this at default or at lease set it to something way more conservative, like 16-14ms (values between 60 and 70.)
have you even tried the build.prop? im guessing you havent, it dramatically improves the phones, speed, smoothness, and battery life

everything your saying would be right if the build.prop actually made things worse which it doesnt it only improves things

you dont have to use my build.prop i posted this for people who wanted better performance out of their phone

seriously though i do appreciate your opinion :) it is always good to know EXACTLY what your about to put into your phone
 

·
Premium Member
Joined
·
92 Posts
Discussion Starter · #12 ·
also what you said is right, what i meant to say is that even though what your saying is right thats not the case for everyphone

thats why this build.prop is special it fits this phone :p
 

·
Android Beginner
Joined
·
11 Posts
dsexton702 said:
seriously though i do appreciate your opinion :) it is always good to know EXACTLY what your about to put into your phone
That's exactly my point. I try to avoid putting anything on my phone without understanding what it does.

It's hard to test our phone by just running it, it's so fast already that any perceptive increase or decrease in speed can be attributed to a placebo effect.The battery life is hard to test either because you'd need to run the phone exactly the same way for few days to compare the results, which is course impossible. There are objective tests that can be created, but they really have to be written to test certain aspects of the phone. For example to test the Dalvik heapsize performance one would need to write a program that allocates and deallocates lots of memory, time it for a while, and compare results.

Btw, I there is still a question was the 48MB of heap size the Samsung/Android default or was it tuned by the Bali kernel. If it was Bali, maybe there is a reason to lower it to 32B after all.
 

·
Premium Member
Joined
·
92 Posts
Discussion Starter · #14 ·
AsX said:
That's exactly my point. I try to avoid putting anything on my phone without understanding what it does.

It's hard to test our phone by just running it, it's so fast already that any perceptive increase or decrease in speed can be attributed to a placebo effect.The battery life is hard to test either because you'd need to run the phone exactly the same way for few days to compare the results, which is course impossible. There are objective tests that can be created, but they really have to be written to test certain aspects of the phone. For example to test the Dalvik heapsize performance one would need to write a program that allocates and deallocates lots of memory, time it for a while, and compare results.

Btw, I there is still a question was the 48MB of heap size the Samsung/Android default or was it tuned by the Bali kernel. If it was Bali, maybe there is a reason to lower it to 32B after all.
yea i believe bali does set it to 48 as an automatic
 

·
Android Beginner
Joined
·
11 Posts
dsexton702 said:
yea i believe bali does set it to 48 as an automatic
I that case you'd be competing with mighty drhonk himself :)

But actually after some quick research I found that 48MB was set into stock build.prop by Samsung. On SGS2 with its 1GB of RAM the stock default is 64MB.

I think the 32MB originated from some pretty old threads where people were extending the cache size from 24 or 30MB to 32MB on their older phones.

I see that in the latest build.prop you've set max_events_per_sec even higher to 300. This is one window event per 3ms! The poor little phones didn't know what hit them :) At least I'd let people know on the xda forum what are they getting into with these numbers.
 

·
Premium Member
Joined
·
152 Posts
the diffrence between 32- 64 mb is the fact the sgs2 has 1gb of ram with about 800-910 mb usable after video audio and all devices are loaded

yes the 32 originated by old ones trying to increase there cache size but given that the sgs has 512 mb with about 312 mb usable by system 48 is actually alot higher then it should be take your amount of ram devide it by the total ram ususally gets your cache devider

also in regards to the dalvak cache anything larger then what it actually needs just goes wasted the larger u make it the longer it takes the phone to read write from cache because it increases the time between requests and received
 

·
Premium Member
Joined
·
152 Posts
also while were on the topic please enlighten me why a phone with 512 mb of ram and 302 mb or so usable needs a cache partiton size of 1gb based on linux the way the cache partiton works its based off the amount of ram actually in the device so in pratically it should be set to 512 mb not 1gb Half the cache space isnt even used honestly its not.

not starting a argument i just wanna hear your insights on this
 

·
Android Beginner
Joined
·
11 Posts
We are not talking about Dalvik cache, I called it once erroneously first, sorry about that. We are talking about heap, memory where Java apps dynamically allocate space for new objects. There are some theories behind memory management based on mathematics and statistics, so probably there is some formula that calculated optimal heap size given RAM size, expected loads, average application memory requirements, etc. That formula is most probably non-linear in regard to RAM size variable, so doubling the RAM would not automatically double the heap size. I understand that large heap size may slow things down too because although the garbage collection has to run less frequently, it will run longer once started. But somehow I trust Samsung engineers that decided to set it to 48MB on our phones more than some old internet posts...
 

·
Premium Member
Joined
·
152 Posts
Total ram - system devices that need ram just forget that ram exzisted ull never get it or see it..
take the value you have left + your cache for heap size divide that by the amount of apps that can be loaded dynamically also factor in bitmap vs screensize resoultion yes that does have a factor the larger the resoultion the higher the cache should be its not end all be all and it verys by device
 

·
Premium Member
Joined
·
768 Posts
"dsexton702 said:
Hey guys, ive been tweaking the build.prop for the sgs4g for a day or two now and i think i finally hit the sweet spot. Enjoy

To install simply put on your sdcard and flash in cwm

for GB users here's one for you guys(bottom of OP ;))

UPDATE: improved build.prop 7/17/11

http://www.mediafire.com/file/x8k9igfa84aox4m/Performance.zip
Interesting, would you mind if I used the tweak block as a starting base to find similar tweaks for the Nexus S? Proper credit and everything of course, but it's up to you. Particularly interesting because being a T-Mobile device too it could be very similar except the 4G parts (well HSPA).

Sent from my Nexus S using RootzWiki Forums
 
1 - 20 of 24 Posts
Top