Hi guys,
I compiled compcache and lzo compression modules for 2.03.405.3. For those of you that don't know what compcache is... it's a compressed block device in RAM which acts as swap disk. Because it is compressed it basically extends you RAM to some extent. It is also used in kyosa's CM6 ROM.
You can test it by doing:
Code:
insmod lzo_compress.ko
insmod lzo_decompress.ko
insmod ramzswap.ko disksize_kb=20480
swapon /dev/block/ramzswap0
...this loads needed kernel modules, makes/initializes one device with size of 20 MB and makes swap space on it.
Please feel free to test and report back.
Really really interesting..
Do you have found improvements? I'll try it asap!
Ps when do you take the source of compcache? Thanks!
Sent from my HTC Legend using XDA App
good job on bringing it out!
although after downloading, installing, and running it, did about 10 benchmarks (5 with compcache, 5 without) i kept losing performance with compcache...
so i decided to run it on my phone for awhile, to see after effects with it running for a little while, i noticed that my rom started graphically being choppy and slower after time...
quite interesting.........
Quanny2000 said:
although after downloading, installing, and running it, did about 10 benchmarks (5 with compcache, 5 without) i kept losing performance with compcache...
Click to expand...
Click to collapse
Yes, compcache has its own drawbacks... especially on slower processors - it can potentially drain more battery juice because of constant compressing/decompressing. And yes, it slows down over time that's for sure.
How big is your compcache swap?
BlaY0 said:
Yes, compcache has its own drawbacks... especially on slower processors - it can potentially drain more battery juice because of constant compressing/decompressing. And yes, it slows down over time that's for sure.
How big is your compcache swap?
Click to expand...
Click to collapse
20mb as stated in the original post...
Sent from my Legend using XDA App
Compcache is not a good idea on most phones.
It confuses the lowmemorykiller, because lowmemorykiller checks how much space is available in the RAM, it doesn't check how much is available in total due to compcache.
Also, Legends have a quite decent amount of RAM, 320 MB, which fits the CPU performance perfectly.
Just my $0.02.
Well, low memory killer is not an app but kernel module/driver. And it has bunch of parameters that can be set via /sys/module/lowmemorykiller/parameters in conjunction with settings in /proc/sys/vm. If you run compcache, I suspect that you can and know how to tune those parameters so your kernel won't explode...
It is so much good idea as also bad idea. It depends on how are you using it and why. Soccer ball can also be a deadly weapon, but that doesn't mean we stop playing soccer with it
Related
Does the froyo update make the full 512 mb ram available? I had heard earlier that only a part of it was available due to 2.1 limitations.
Sent from my GT-I9000 ADJF1 using XDA App
They were always available, ~300Mb for Programs and the rest for the system files... Why should that change?
I think what the OP meant was whether one had more memory for apps as ht tp:// developer.android.com/sdk/android-2.2-highlights.html claims that the 2.6.32 kernel upgrade would bring "HIGHMEM support for RAM >256MB".
At the moment, we do not have the full memory available in the Linux system:
Code:
$ adb shell
* daemon not running. starting it now *
* daemon started successfully *
$ free
total used free shared buffers
Mem: 333420 329988 3432 0 34724
Swap: 0 0 0
Total: 333420 329988 3432
I do not know whether that is related to the graphics hardware taking some of the memory, or to the kernel version:
Code:
$ uname -r
2.6.29
Edit: What do you mean by 'system files'? The OS is stored on mass storage, right? And Dalvik and friends should appear as userspace processes taking up regular memory.
satta said:
I think what the OP meant was whether one had more memory for apps as developer.android.com/sdk/android-2.2-highlights.html claims that the 2.6.32 kernel upgrade would bring "HIGHMEM support for RAM >256MB".
Click to expand...
Click to collapse
You do understand that this does not compute, since there has always been more than 256MB available
Or has there?
I was wondering about the same thing, kernel 2.6.32.9 (JP3) also shows a little more than 300mb...
buddy01 said:
You do understand that this does not compute, since there has always been more than 256MB available
Or has there?
Click to expand...
Click to collapse
Hey, I'm just quoting from an official AOSP site
Mine shows 30 mb available under advanced task killer. What am I missing?
Sent from my GT-I9000 using XDA App
@satta yeah that's what I meant and that's what I had read. Cheers
Sent from my GT-I9000 using XDA App
I've seen Desire have over 400MB of memory available for applications in a video with a some sort of task manager on..
Are you sure, max i got on my nexus one was 312MB in some rare cases, using it without closing apps at all, never got below 100MB... But my Galaxy's max is 170MB, is almost half what my nexus gave me, that kinda suck (don't know if it matter bu tit feels bad in my head )
Desire has 576MB memory.. N1 has 512MB
Sent from my GT-I9000 using XDA App
Maximum free RAM i got from my sgs is 210mb, easily achieved by using Astro's process manager and killing all non-essential services.
why t.f. do you guys always want to have lots of fre ram? please read a little about android memory management... free ram is wasted ram!
FadeFx said:
why t.f. do you guys always want to have lots of fre ram? please read a little about android memory management... free ram is wasted ram!
Click to expand...
Click to collapse
So? We all still want our phones to be as future proof as we hoped they would be when we bought them. And we want the extra RAM simply because it's supposed to be there.
Sent from my GT-I9000 using XDA App
FadeFx said:
why t.f. do you guys always want to have lots of fre ram? please read a little about android memory management... free ram is wasted ram!
Click to expand...
Click to collapse
As long as it doesn't go below that ~70mb when the phones actually start lagging
Might also want to take into consideration that the counterpart Desire used in this thread is also an android phone, sure too much free memory is wasted memory but too little usable memory = lag and if there isn't a lot to use in the first place then it won't take much for the phone to start lagging.
Some help in JG and onward firmwares but it's still quite funny that a simple user can make a fix to create a solution for the entire problem and Samsung hasn't either thought about this or taken it into consideration. (Mimocan is my hero <3)
edit: WOO my first post after actually following these forums for almost half a year, just registered recently
Hey,
Actually you do not need that much RAM. Im running on JG5, which IMO is the most stable and usable firmware out there. Has been running the phone for 3 days straight without any ATK like apps, and has not experience any lags.
Another thing is that, IMHO ATKs slow down the system.
Sent from my GT-I9000 using XDA App
The current Samsung froyo builds do not support highmem. It is a kernel compile time config option. Samsung will hopefully enable it in later builds.
Highmem made a noticeable difference in performance on my nexus one.
ed10000 said:
So? We all still want our phones to be as future proof as we hoped they would be when we bought them. And we want the extra RAM simply because it's supposed to be there.
Click to expand...
Click to collapse
Nonsense. You are not entitled to more free ram in any way.
Every os uses a part of the ram for the kernel code and its buffers.
In addition the advanced graphics will need memory for its texture storage and graphic representation.
A froyo kernel will not make a major difference.
The sg has 512 memory today and it is using it as it should...
akselic said:
As long as it doesn't go below that ~70mb when the phones actually start lagging
Might also want to take into consideration that the counterpart Desire used in this thread is also an android phone, sure too much free memory is wasted memory but too little usable memory = lag and if there isn't a lot to use in the first place then it won't take much for the phone to start lagging.
Some help in JG and onward firmwares but it's still quite funny that a simple user can make a fix to create a solution for the entire problem and Samsung hasn't either thought about this or taken it into consideration. (Mimocan is my hero <3)
edit: WOO my first post after actually following these forums for almost half a year, just registered recently
Click to expand...
Click to collapse
lagging is actually not caused by to less free ram, in android there is no such. the used ram is caused by apps that you opened and then exited again. if you open a new app that needs more ram than aviailable (actually with a little gap of some mb) the system will close apps that are not used anymore and only kept in ram for faster opening. the lag comes from bad i/o speeds of the nand (internal memory) where apps data is stored. on i7500 there is 192mb of ram and it works ok with froyo (thanx to drakaz and gaosp team!) only thing is that every app you open forces the app you opened before to be kicked out of ram what makes switching between apps makes somewhat a pain.
also free memory and usable memory is apples and pears, useable is all memory that contains no actually running in foreground app or service. and free memory is the rest that contains absolutely no information and thus WASTED
edit: btw i7500 is running well with 20mb free ram.
I often have no more than 30 MBs free, and not running THAT many apps. What is strange is that sometimes there is 70-80 MB free, and I have not done anyting. What happens in the background is a mystery... Any suggestions?
I'm using nfinitefx's .6 deodexed rom but don't like how the internal memory for apps is lower so I'm thinking of switching to the odexed version, however the deodexed rom seems to run a little smoother.
odex is better for me. ive never used a 'killer' of any sorts. linux is smart; dont think with a windows frame of mind where the lowest processes equals faster performance. i use nfinite's .6odex with the 691oc kernel with no memory management. i use no widgets and have deleted just about everything htc from the device that isnt critical.
my device is blazing fast, responsive. more responsive than my friends evo's and galaxies with no hiccups or 'skips'. again, thats just my situation...
Right on thanks again you just helped me in another thread =] I want to use odexed with darchstar vuv2 768 kernel any thoughts on that? Also what is memory management is that predetermined minfree settings?
Not only are odex roms known by most to be slightly quicker ( I believe) but they have crap tons more free memory.
Sent from my HERO200 using XDA App
metal666fukhead said:
Right on thanks again you just helped me in another thread =] I want to use odexed with darchstar vuv2 768 kernel any thoughts on that? Also what is memory management is that predetermined minfree settings?
Click to expand...
Click to collapse
Nothing sounds wrong with that combo; DarchKernel is a good kernel. Yes, memory management is basically a minfree app like AutoKiller built-in the kernel. It's best to avoid the memory management versions as they have been known to cause slow-downs over time due to some bug.
Now that the lag fixes have made strong progress and Froyo's source is almost here, there's one final thing that can be fixed about the SGS: compared to other phones, it's got quite a bit of less USABLE RAM.
Luckily, a cool dev in the i9000 forum has been messing with the kernel and figuring out how to free up more RAM. He's at 356 MB freed up (non-stable) thus far, and about 340 MB stable. This is up from 304 MB by default!!
Take a look if you haven't already. http://forum.xda-developers.com/showthread.php?t=816229
Thanks to all devs for their hard-work, and I hope this helps you out in some way.
this requires board configuration files which are only available in source, not useful to us until we have source.
has anyone figured out if the 200 some odd megs of missing RAM are used by the GPU? Or does it have its own dedicated RAM?
Kaik541 said:
this requires board configuration files which are only available in source, not useful to us until we have source.
Click to expand...
Click to collapse
So you're saying we need the Captivate source files specifically? Because it works just fine for i9000 SGS.
gunnyman said:
has anyone figured out if the 200 some odd megs of missing RAM are used by the GPU? Or does it have its own dedicated RAM?
Click to expand...
Click to collapse
The thread details some of it. Apparently Samsung's programmers were lazy and it dedicates quite a bit of RAM for GPU purposes (but doesn't dynamically allocate it based on usage... so that RAM just sits there useless when you're not doing video-intensive applications) and some of it is also for the radio/modem.
Disgustipated said:
So you're saying we need the Captivate source files specifically? Because it works just fine for i9000 SGS.
Click to expand...
Click to collapse
yes, unless you know how to make a captivate froyo kernel without sources and aren't sharing (don't point to xcalibur's kernel, that's an i9000 kernel, not a captivate one)
Still interesting stuff though. Looks like we'll be able to recover at least 20-30 MB of RAM from the GPU. Perhaps more once it gets sorted where each and every drop of that original 512 MB is going.
Would be cool if that is what CM6 was waiting for....
that would yield huge performance increases i'd imagine.
iamamp3pimp said:
Would be cool if that is what CM6 was waiting for....
that would yield huge performance increases i'd imagine.
Click to expand...
Click to collapse
No it would not, having 140-150MB up from 120-130MB free RAM while sitting on your home screen and running your applications will NOT give your a huge or otherwise performance increase. FREE RAM means it's not being used! this is not a desktop where it uses a lot of swap when running on a low RAM system. the hardware on these devices NEED the alloted RAM to operate correctly. Samsung was not simply "lazy" mess around with the kernel and free up a few more MB RAM and you might find a few VERY RAM intensive applications that perhaps run smoother or what ever but then you are reducing performance of all the hardware features that make your device so nice, I.E the Camera, Radios, GPU. the effort is not worth any possible tiny free RAM boost you might get. why does everyone care so much about the free RAM anyway. I know a LOT of folks are going to jump in here now and ramble on about how it's a big deal and how samsung screwed it up or whatnot, but making those hardware features dynamicly allot RAM would mean that the kernel would have to some VERY efficient prioritizing of hardware/software RAM usage in order to have the device run currently in whole. It makes more sense to me to just do what they did and lock the amount of RAM to those hardware features that would allow them to best operate without your phone radio not working right or your camera not being able to record in 720 because you forgot you had some application open in the background and RAM prioritizing isn't as perfect as it should be. the device runs FINE! Also so this isn't confusing to anyone who might think that I think we want to make the RAM dynamic, I understand it'sstatic thing but the same things apply, those hardware features would just be stock without the correct ammount of RAM all the time.
Hi.
Anyone tried to improve performance like on the SGS in changeing filesystem?
Also is the hw acceleration possible, adding a line in the biuld.prop file to enable gpu in scrolling etc?
I must say that my lg p500 on cyanogen7 is much snappier, and milestone can be choppy sometimes. I feel also that qualcomm processors have better performance in the system than milestone's TI. Omap.
I know that p500 has more ram, but I feel like someting is wrong in the milestone that slows down a bit. I know that hvga is more than 2x less pixels than wvga, but still, maybe some hacks will help. Lagfix and HW acceleration helps on many android phones from lg, samsung etc.
HW acceleration is enabled by default.
My Milestone is actually very smooooooooooooth..... and snappy!
Yes, unbearable without SuperCharging it, but effing awesome with SuperCharging
zeppelinrox said:
My Milestone is actually very smooooooooooooth..... and snappy!
Click to expand...
Click to collapse
Interesting What ROM did you use? and What overclock frequency?
At the moment CM7 at 1100mhz.
But come to think of it, I don't think I need 1100mhz anymore lol
I'm often "underclocking" it to 800mhz without really noticing too much difference.
But the main thing is, any ROM would fly with supercharging
Go on, ask him wat supercharging is!
Sent from my Milestone
LOL it's in my sig
You Canadians are funny
oh wait...
zeppelinrox said:
LOL it's in my sig
You Canadians are funny
oh wait...
Click to expand...
Click to collapse
Us Canadians are awesome! Hehe
Did you see that CM7 final release is out for Milestone? He said he tweaked the memory a bit.
ya I looked.
It looks alot like my v5 gscript in that he put the launcher in it's own spot with priority 2 and same kill threshold.
I put it in the second slot but he put it in the 3rd slot.
He also pushed the big chunk of apps (secondary server) down the list to the 5th slot from the 4th whereas I had moved them up from the 4th to the 3rd.
But he increased the memory limit so that chunk of apps actually start getting killed at 24 mb!
Previously, those apps weren't getting killed until ram got down to 16mb so it's actually a very big change.
So by default, it may actually behave like my Balanced 1 v5 gscript. heh.
The difference is the Heavy Weight App. We both have it in the 4th slot but in CM7 Heavy Weight App is more protected and has more priority than secondary server (the big chunk of apps) whereas I have secondary servers as being more important.
I want to see what apps fall in that heavy weight category before my update
Will the fact that apps get killed at 24MB now instead of 16MB affect the way that you can now bulletproof two apps in this recent update? Because he warns that it is RAM intensive, but what does it do to the apps in the other slots?
It just means if you're bulletproofing an app, another app that you're not paying attention to will get killed instead of the one you want to keep running. But it would bounce back anyway and something else would get killed.
They just play musical chairs and take turns updating once in awhile.
btw, I adjusted the minfree on my phone and gave heavy weight it's own slot but there is no apps in that spot at all
I run stuff and let it sit and keep refreshing but I never see a heavyweight.
Braidonh said:
Go on, ask him wat supercharging is!
Sent from my Milestone
Click to expand...
Click to collapse
You are right! What on earth is SuperCharging???
I googled throug XDA and i cant find a clear meaning of SuperCharging
Yea, supercharge tweaks are great. So maybe changeing the filesystem? Some people said that it wont do any boost, but maybe its worth trying.
I disabled dsi bug workaround and phone is flying on adw ex. I definitely need supercharge script as phone lags sometimes in different apps after some time.
And swap would be nice on our stones, but nobody knows how to do it by kernel module.
Try the super test script on page 38 of my thread.
My next update will be based on that with different minfree values
Sent from my Milestone using Tapatalk
Hi
Everybody talk about changing the VM heap value, but... what is the difference after changing it? What about increase its value? And decrease it?
On the CM7 thread adamz667 post this: http://forum.xda-developers.com/showpost.php?p=15065093&postcount=4569
Anyone can confirm that?
Thanks
Increasing cm heap means that apps can use more memory which makes them run faster but then since tbey use up more mem u will have less free memory.
Sent from my Milestone using XDA App
Here you got some definition:
VM Heap Size
The heap is an area of dynamic memory allocated to programs. With a larger heap size, there is more memory for the program and the garbage collector can run more efficiently. Therefore, it is possible to get better performance by setting a larger VM heap size.
However, if you set it too high, you can run out of free memory which can trigger swapping which will degrade performance. Therefore the VM setting is a trade-off.
The optimal value will depend on the RAM on the device as well as the programs and usage patterns, therefore the optimal setting can often only be determined by the user experimentally.
Default value: varies between devices
Click to expand...
Click to collapse
from: http://droidgram.com/forum/8-Android-Dalvik-VM-Heap-Size
adamz667 said:
Here you got some definition:
from: http://droidgram.com/forum/8-Android-Dalvik-VM-Heap-Size
Click to expand...
Click to collapse
Thanks adam, but your post on CM thread was a good theory and this definition it's opposite to your post (a this new one: http://forum.xda-developers.com/showpost.php?p=15092265&postcount=4582)
I only want to know what value use without have to try all of them during days of testing...
Thanks
parads said:
Thanks adam, but your post on CM thread was a good theory and this definition it's opposite to your post (a this new one: http://forum.xda-developers.com/showpost.php?p=15092265&postcount=4582)
I only want to know what value use without have to try all of them during days of testing...
Thanks
Click to expand...
Click to collapse
I have tested all of them today and the best results was with 16mb.
How I was testing it?
Shadow Guardian HD is a very heavy game for MM's ram memory. So I've tested every vm heap size on one and the same level of SGHD, with the same run environment and game was most playable on 16mb (no freezes, reboots, no returns to home screen).
Really 16mb. Which rom? And how far did you get in the game?
Sent from my Milestone using XDA App
thre3aces said:
Really 16mb. Which rom? And how far did you get in the game?
Sent from my Milestone using XDA App
Click to expand...
Click to collapse
I am using CM7rc10 (14.06.2011) I am now in 4th episode (level?) - Medusa Sanctuary.
That is very very interesting. I'm gonna have to give cm7 another chance. Maybe rc10 is a lot better than rc4 (last cm7 I tried)
Sent from my Milestone using XDA App
i also have good performance with 16m tried most settings from extremely large to extremely small...
also png optimized most apps again and again... (which decreased the size of the apps by almost 10mb again - quite sure that it does not make much of a difference)
don't have any app locked in memory and only one homescreen with adw ex without widgets...
dunno till now i have not experienced any issues with lost sms or phone calls...
but i'm aware of that it could happen with my settings so it needs more testing, jit turned off etc. phone works like a charm since i switched from froyomod a week ago or so.
sent from my current location
Are you sure u tried 16 mb. Because I just tried shadow guardian on cm7 rc10 with ur settings and zepplinrox supercharger on balance and tbh it was rather language at times
Sent from my Milestone using XDA App
I've tried jit off and VM heat on 16MB but not get any result.
The launcher was freezing 3 or 4 times, and all games get a minimal improve: 3 seconds more until FC.
I'm testing with: Asphalt 6 and Brothers In Arms 2 (Gameloft games) and Age of Wind v2.2. All versions for MM, with people that play them on stock rom.
thre3aces said:
Are you sure u tried 16 mb. Because I just tried shadow guardian on cm7 rc10 with ur settings and zepplinrox supercharger on balance and tbh it was rather language at times
Sent from my Milestone using XDA App
Click to expand...
Click to collapse
well as i said i do not use that memory intensive apps.
(i think my biggest apps are maps and the browser, and the browser barely goes beyond 30mb, so 2 vm's with 16mb, instead of 2 with 24. but most apps stay below 10mb so i think for my use it is a good solution)
also i debloated the rom massively and replaced most system apps with smaller ones.
cm7 performs very well with this settings, at least for me. (no redraws, no lags in ui no freezes etc...)
like i said i don't use games on my stone
edit: only genie news & weather app reloads often but i think it simply has a high priority.
sent from my current location
That is quite interesting. On ho no I
And 20mb with balanced 3 supercharger works great. But not so well on 16mb
Sent from my Milestone using XDA App
I had tried 16mb weeks ago when somebody suggested it.
That lasted about 5 minutes.
Scrolling between adw screens was brutally choppy.
Swipe finger, wait, look at watch, then bam - the screen suddenly decides to quickly jump to the next screen...
zeppelinrox said:
I had tried 16mb weeks ago when somebody suggested it.
That lasted about 5 minutes.
Scrolling between adw screens was brutally choppy.
Swipe finger, wait, look at watch, then bam - the screen suddenly decides to quickly jump to the next screen...
Click to expand...
Click to collapse
I've got the same with 12mb vm heap. But when I use 16mb everything works fine on CM7 and HO!NO! CM7. Maybe it depends on rom/apps you use and your own configuration.
I guess.
But I'm used to fast, smooth and lots of free ram no matter what rom I'm using
Sent from my Milestone using Tapatalk
adamz667 said:
I've got the same with 12mb vm heap. But when I use 16mb everything works fine on CM7 and HO!NO! CM7. Maybe it depends on rom/apps you use and your own configuration.
Click to expand...
Click to collapse
yeah 12mb is to small... experienced some errors with it too.
i have to say that for me everyhing between 16 and 32 mb seems to do not do much of a difference, but with 32mb my system uses some more RAM right after boot.
after a while it usally uses less (around 80-90mb sometimes less, sometimes more) so i normally have around 60mb free RAM, which seems to be enough.
i'm out of this discussion for now, but i have to say that i rly think ur VM Heap settings should match the apps u use.
so just try different settings.
@Zeppe
yay never experienced that, but i use only one Homescreen anyway. and ADWEX is rly memory friendly : )
sent from my current location