Hi boyz,
A lot of you probably read, a week ago, or more, a thread by @brainmaster about a method to increase read/write speed of sdcard (more info on his thread).
Few days after I've made a free Android Market App that do the same thing that's explained on @brainmaster thread, but in a very simple mode.
Well, the app doesn't work on some ROMs, or devices, because the system tree is too different. Recently I released the 1.4.1 update, that improve some functions and, I wish, it could work on a lot of devices but I'm now sure.
In this case, I'd like to ask you a hand about that, to translate this app in other languages, or to be a tester, preferably someone that has problem with that one, specially where the app doesn't work in his device.
Join with me and make together a powerful app, only for the community.
Great job its really works. I found such a cool review of SD Speed Increase App here http://goo.gl/mlFlJ
Keep it up.
Added russian language, v1.4.2
Hi, i would like to help you to translate your app in the dutch language. How can i help you?
Ok, no problem for dutch language. Contact me on skype (diego.stamigni) and I'll send you the XML strings file to translate oka ?
umm i believe by doing this your going to burn out your flash faster. It will write in 2mb blocks instead of 128kb blocks which means every write will do 2mb of wear instead of 128k(up to 16x the wear). Also does this make 4k writes faster? or does it make it slower? You should test this on an SD card using crystalmark
Depend if your system has a max value (like 2048) and over it doesn't go.
diego.stamigni said:
Depend if your system has a max value (like 2048) and over it doesn't go.
Click to expand...
Click to collapse
the app recommends using 2mb which i did. the internal memory went from like 7-8MBps to 10-12MBps, which is a big increase but that was done by membench. Membench doesn't give any good info as in how the test is done so i have no clue if that is continuous or 512k or 64k of 4k. I'll try to format an sd card using windows later and see what crystal mark scores are but i would put a warning saying you are going to cause more wear and tear on your SD card by doing this.(atleast i believe that will cause more wear and tear but i am no expert. It is worth checking into.)
EDIT: running tests with my 16g sd card class 6. I'll post them when i am done.
EDIT: i ran the tests on my sd card using default (whatever that is) and 2048k. As you can see for some reason doing this there is no difference in speed. I do not know why that is but thats what i got. Do you know how to test this in android? membench only does internal memory.
DCMAKER said:
i would put a warning saying you are going to cause more wear and tear on your SD card by doing this.(atleast i believe that will cause more wear and tear but i am no expert. It is worth checking into.)
Click to expand...
Click to collapse
I will be interested to see your results. I wouldnt think this would hurt the cards life span. It has a limitedn umber of read and writes as it is and this isnt doing to increase or decrease the amount of reads or writes, simply make them quicker.
I suppose though you could look at it similar to OCing a cpu as it will decrease the lifespan of the CPU some what.
TechN9Ne1730 said:
I will be interested to see your results. I wouldnt think this would hurt the cards life span. It has a limitedn umber of read and writes as it is and this isnt doing to increase or decrease the amount of reads or writes, simply make them quicker.
I suppose though you could look at it similar to OCing a cpu as it will decrease the lifespan of the CPU some what.
Click to expand...
Click to collapse
i posted two tests i did in the post above i formated the cards using default settings and 2 MB block and saw nothing in windows so maybe this fix is with in the internal settings of android OS i guess.....so:
does that actually affect the block size?
Does it cause more wear?
How does this actually change the writing and reading?
Does it only improve sequential? or does it also improve random?
Does it hurt random because of the larger block write?
i think these are some important questions to answer. Also it seems this only affect internal memory and not the SD card. Because i found a boost when using membench which tests internal only i guess and i found no improvement using sd tool testing my micro sd card. Does anyone have any input on this? I think there are a lot of questions needing to be answered here.
great app.
can you keep option for 128k? (it is there in previous version, but not in latest one)
this is required to view videos smoothly on galaxy 3
diego.stamigni said:
Hi boyz,
A lot of you probably read, a week ago, or more, a thread by @brainmaster about a method to increase read/write speed of sdcard (more info on his thread).
Few days after I've made a free Android Market App that do the same thing that's explained on @brainmaster thread, but in a very simple mode.
Well, the app doesn't work on some ROMs, or devices, because the system tree is too different. Recently I released the 1.4.1 update, that improve some functions and, I wish, it could work on a lot of devices but I'm now sure.
In this case, I'd like to ask you a hand about that, to translate this app in other languages, or to be a tester, preferably someone that has problem with that one, specially where the app doesn't work in his device.
Join with me and make together a powerful app, only for the community.
Click to expand...
Click to collapse
There has been two updates on the market for your app BUT no change log of updates.
so what has been changed? also this has ads in it so is it just to update the ads or is it an app update?
Also is there a donate version with NO ads. This i think is a must now-a-days.
Linda Manager file manager will tell you if an app has ads and it's free on the market and the paid app has NO ads.
DCMAKER said:
i posted two tests i did in the post above i formated the cards using default settings and 2 MB block and saw nothing in windows so maybe this fix is with in the internal settings of android OS i guess.....so:
does that actually affect the block size?
Does it cause more wear?
How does this actually change the writing and reading?
Does it only improve sequential? or does it also improve random?
Does it hurt random because of the larger block write?
i think these are some important questions to answer. Also it seems this only affect internal memory and not the SD card. Because i found a boost when using membench which tests internal only i guess and i found no improvement using sd tool testing my micro sd card. Does anyone have any input on this? I think there are a lot of questions needing to be answered here.
Click to expand...
Click to collapse
Okay to somewhat answer this persons posts. and to inform unawares.
1st read the research post referenced in the OP.
the block size is the same, it only affects how it reads and not how it writes. therefore additional "wear" would be neglible at the most.
since its read ahead, its not going to have much of an effect on random/small files.
also its not an internal android setting. judging by the location of the setting its actually a kernel setting.
please feel free to correct me if im wrong, and provide a legit link i can learn off of.
Questions ;-P
app is always running in services ^^ so... does it need to edit 'read_ahead_kb at every boot?? i.e. you can't use it to change setting & then uninstall b/c file will revert to default??
++ If set to 2048 kb it makes music skip every so often... So I have mine set to 1024 kb & I don't get this issue
regards,
Model: Huawei U8150 - tested & working
I am using this on an HTC Hero CDMA running CM 7.0.3. Seems to work well, except when I click it to persist the setting upon reboot, it doesn't appear to. After a reboot, the status always shows 128kB. Is it actually adding the script to init.rc to be applied on a reboot?
Sto usando questa tua utilissima app. Solo che ho trovato come valore dello stato a 3072kb mentre secondo la tua app. il valore migliore è 2048kb Non capisco allora come mai sto ottenendo un valore cosi grande?
Is it possible for an update to set to 128? The HTC Evo works best under that setting, and it is no longer an option.
http://forum.xda-developers.com/showthread.php?t=921530
The value doesn't stick on boot ...
BTW, great app !
Diego & All,
I am trying to buy this app in the Premium version in the Google Play Store and it keeps declining the Card I always use. I can't purchase anything. Called my bank. They said they're not even seeing the attempts and my Card is Active and fine.
Is anyone else having a problem purchasing this app (or any app) from Play?
I wanted to get it thru Google Play, so it will recognize the purchase in the future and in case there's any updates.
Thanks
diego.stamigni said:
Hi boyz,
A lot of you probably read, a week ago, or more, a thread by @brainmaster about a method to increase read/write speed of sdcard (more info on his thread).
Few days after I've made a free Android Market App that do the same thing that's explained on @brainmaster thread, but in a very simple mode.
Well, the app doesn't work on some ROMs, or devices, because the system tree is too different. Recently I released the 1.4.1 update, that improve some functions and, I wish, it could work on a lot of devices but I'm now sure.
In this case, I'd like to ask you a hand about that, to translate this app in other languages, or to be a tester, preferably someone that has problem with that one, specially where the app doesn't work in his device.
Join with me and make together a powerful app, only for the community.
Click to expand...
Click to collapse
Diego,
FYI, there is a problem (verified by Google Support) with purchasing the pay version of your app. I would have bought it today, but wasn't able to.
Just wanted to let you know.
TTYL
Related
[Q] Will future versions of the Android OS fix this blasted "out of space" problem?
So I have been an avid fan of Google for many, many years. I was looking forward to the Google phone before any Android details came out. So I naturally jumped at the chance to own one. But lately, I'm starting to have a change of heart. These constant out of space warnings are really getting annoying.
So much in fact, I don't know that I want my next phone to be an Android device sadly. I really want to want another one. But this experience is starting to sour my taste for them.
I currently run a rooted (virtuous) Dinc. I have gotten the out of space notification many, many times. I have now started to get it again after installing the Google Music app after being invited into the beta. I have removed about 15 programs, but I still only have about 17MB free on that stupid 149MB partition!
This is beyond annoying. If the phone has something like 8GB of internal memory, why can't I use it? Why can't the apps install there? Why limit this massive amount of storage to a measly 150MB? What year is this, 1995?
I know I'm preaching to the choir here, but I am fed up. I don't know what else to do here and I'm ready to walk away. Someone please tell me that Google has saw the light and is going to fix this glaring bug of theirs in Gingerbread or Ice Cream Sandwich!
Why did you create a partition so small? You should create a larger partition to prevent these notifications so often since you'll have more space and use up the extra space not being used. Also, it's not the Android OS's fault that your phone has a small partition made. Since the partition is so small, and you have hardly any memory left (17mb) then it's just one of the phone's functions to notify you about this which should be a good thing to let you know.
theonew said:
Why did you create a partition so small? You should create a larger partition to prevent these notifications so often since you'll have more space and use up the extra space not being used. Also, it's not the Android OS's fault that your phone has a small partition made. Since the partition is so small, and you have hardly any memory left (17mb) then it's just one of the phone's functions to notify you about this which should be a good thing to let you know.
Click to expand...
Click to collapse
Umm...I didn't make the partition...Android did. Trust me, if it were my choice it would be bigger!
ned4spd8874 said:
Umm...I didn't make the partition...Android did. Trust me, if it were my choice it would be bigger!
Click to expand...
Click to collapse
Android doesn't just make partitions by itself. Maybe the rom you have did that. try getting a new rom because this is not normal.
theonew said:
Android doesn't just make partitions by itself. Maybe the rom you have did that. try getting a new rom because this is not normal.
Click to expand...
Click to collapse
Wrong. At least on the HTC Droid Incredible, ROM's have a standard 150 megabyte \data\data partition. For either odexed or deodexed ROM's space is taken in that partition by pretty much every installed application. I've seen contacts hog nearly 70 megabytes of that partition for some handsets, and Sense takes a lot of it, too. Odexed ROM's allegedly require less of the space.
I've run several Froyo ROM's and they all have that limitation. I cannot speak for AOSP ROM's, only Sense ROM's.
There is an app which I have used (but don't seem to be able to find in the Market any more, and the dev isn't responding to PM's here at xda, but I digress) called NotEnoughSpace which allows some portions of the contents to be shifted elsewhere. I found it was very helpful when I was on Froyo, but it does not appear to work on GingerSense. On the other hand, the partition appears to be bigger in GingerSense. The flip side is that the GingerSense ROM's are so fat, there's less RAM available for applications to run.
Pick your poison. I agree it's a stupid limitation that somebody should figure out a way to fix.
hgoldner said:
Wrong. At least on the HTC Droid Incredible, ROM's have a standard 150 megabyte \data\data partition. For either odexed or deodexed ROM's space is taken in that partition by pretty much every installed application. I've seen contacts hog nearly 70 megabytes of that partition for some handsets, and Sense takes a lot of it, too. Odexed ROM's allegedly require less of the space.
I've run several Froyo ROM's and they all have that limitation. I cannot speak for AOSP ROM's, only Sense ROM's.
There is an app which I have used (but don't seem to be able to find in the Market any more, and the dev isn't responding to PM's here at xda, but I digress) called NotEnoughSpace which allows some portions of the contents to be shifted elsewhere. I found it was very helpful when I was on Froyo, but it does not appear to work on GingerSense. On the other hand, the partition appears to be bigger in GingerSense. The flip side is that the GingerSense ROM's are so fat, there's less RAM available for applications to run.
Pick your poison. I agree it's a stupid limitation that somebody should figure out a way to fix.
Click to expand...
Click to collapse
Yes, thanks for explaining that much better than I could!
I do have NotEnoughSpace and don't use it for that purpose anymore. I just use it to see how much space I have available and to clean up the dalvik cache. When I was using it to get more space, my apps kept disappearing on me and I would have to re-install them constantly!
is this just a droid problem? i have an epic 4g and it allows me to use the entire 485mb for app storage. what about an apps to sd option? i know at least half of my apps have the option of being stored on the sd card. just wondering.
darksideauto said:
is this just a droid problem? i have an epic 4g and it allows me to use the entire 485mb for app storage. what about an apps to sd option? i know at least half of my apps have the option of being stored on the sd card. just wondering.
Click to expand...
Click to collapse
Every app that can be moved to the SD is. But I still have only 17MB available.
ned4spd8874 said:
Every app that can be moved to the SD is. But I still have only 17MB available.
Click to expand...
Click to collapse
This does not make any sense. If an app is moved to the SD Card, the space it took up on the device (some if not all) should be gained back since it's not there any longer. Whenever I move an app to the SD Card, I get back my space. There really must be something wrong with your rom/phone.
You sir have alot of apps then.
Sent from my SPH-D700 using XDA App
The small internal Storage is a massive problem. I agree to you.
But I know there are several ways to fix this. What I don't know is how...
There are several ROMs who support different kinds of app2sd scripts so you get more 'virtual' internal storage on the sd card.
As you can see on the pictures attached i have approx. 550 mb free internal storage but more than 40 apps that could be pushed to sd.
To get this it is necessary to re-partition your sd-card and install the correct scripts.
Unfortunately, as i said, i'm not able to tell you exactly how to get this work. I just followed a step-by-step guide somwhere in this forum.
The ROM i use, uses D2SD automatically, if the SD-card is partitioned the right way.
I'm sure you will find something that fits to the ROM you use.
darksideauto said:
You sir have alot of apps then.
Sent from my SPH-D700 using XDA App
Click to expand...
Click to collapse
I have 75 non-standard/included apps. I've read where other people have hundreds!
pistolero0 said:
The small internal Storage is a massive problem. I agree to you.
But I know there are several ways to fix this. What I don't know is how...
There are several ROMs who support different kinds of app2sd scripts so you get more 'virtual' internal storage on the sd card.
As you can see on the pictures attached i have approx. 550 mb free internal storage but more than 40 apps that could be pushed to sd.
To get this it is necessary to re-partition your sd-card and install the correct scripts.
Unfortunately, as i said, i'm not able to tell you exactly how to get this work. I just followed a step-by-step guide somwhere in this forum.
The ROM i use, uses D2SD automatically, if the SD-card is partitioned the right way.
I'm sure you will find something that fits to the ROM you use.
Click to expand...
Click to collapse
I've used the app2sd and notenoughspace programs in the past, but it seems they have done more harm than good. Apps would stop working. They would disappear completely. The system would crash, etc. I kinda gave up hope on using those approaches.
I was hoping the Google Android team would wake up and just fix this instead of us paying users have to perform work-arounds just to use our devices.
ned4spd8874 said:
I've used the app2sd and notenoughspace programs in the past, but it seems they have done more harm than good. Apps would stop working. They would disappear completely. The system would crash, etc. I kinda gave up hope on using those approaches.
I was hoping the Google Android team would wake up and just fix this instead of us paying users have to perform work-arounds just to use our devices.
Click to expand...
Click to collapse
Then you are pretty unlucky. I never had problems with this stuff. All works just fine as it should.
But, of course you are right, i can't understand why they don't give us a GB or so as internal storage either.
Damn scrooges.
ned4spd8874 said:
I've used the app2sd and notenoughspace programs in the past, but it seems they have done more harm than good. Apps would stop working. They would disappear completely. The system would crash, etc. I kinda gave up hope on using those approaches.
I was hoping the Google Android team would wake up and just fix this instead of us paying users have to perform work-arounds just to use our devices.
Click to expand...
Click to collapse
Try using a cleaner ROM for your DInc (ie "stock Android"- no Sense UI). I just got a DInc yesterday, switching from an Aria. Did a factory wipe, rooted, and installed the CM7 nightly 100. I believe I currently have s2e on my 8gb MicroSD (just swapped it from my Aria, which had s2e and CM7). Anyway, I have 118MB used, 630MB free internal storage space for apps. This clearly isn't a Google/Android problem. Could be an HTC Sense problem, I suppose.
edit: My Aria even has 185MB available for apps. Not a huge amount, but considering it has a lot less internal space than a DInc, yeah, OP something is wrong.
Hello,
I was reading a lot of posts about adding a swap partition in the SD card for android devices.
There seems to be no support for it in the stock kernel of the HTC Sensation, and there isnt any rom that supports it.
Is it very difficult to recompile a kernel (for example I'm using LEEdroid 1.3)
Do you guys think that it will be worth the hassle?
I have a Class 10 Sd card, and coming from a Nokia N900 swapping on it wasnt that slow, but In what Im more interested is in keeping more things in memory to avoid doing reloads (for example when you open 3 tabs in the web browser and go to google talk or play something like drag racing and then you reopen the web browser all the tabs must be reloaded, from what I understand to avoid running out of memory).
Sorry for my english, sorry for asking this in this forum, but I'm a new member and I'm not allowed to Post in the android development forums, but any help would be really appreciated.
Again Sorry for my english,
And Saludos desde españa!
i was thinking the same way but it seems that no one is interested in swap support
There comes a point when swap just wouldn't be as useful. It was needed on the G1 because it barely had enough Ram to hold a home screen in memory, so there was no other alternative BUT to use swap to make your phone functional, but on a phone like this it would noticeably slow it down since your sdcard would be slower than internal Ram. The reason it would be slower is because the phone doesn't actually run the apps from swap, it just stores them there, so every time you would want to run an app that was stored in swap, your phone would have to move one app from internal ram to swap, then move the app you want to use back to internal. Even with a class 10 sdcard, that would be slower than your dual-core phone opening the app from scratch I'd think...
Hopefully this helps, and hopefully I explained it right. Been so long since I used swap, I really had to think to remember.
Ok first off hope everyone had a great holiday (or Christmas, as the case may be )
I have come to realize that alot of my issues may/may not have been caused by factors outside my phone or the rom I was attempting to install and use. I will give myself credit tho in that in all but one case I have managed to follow instructions to a "T" and have not experienced many/any of the issues that others have. Anyways, I got a new wireless router, and also a class 10 SD card. Some of my earlier connectivity issues are very rare now, and camera issues seem to be minimal also (assuming that the issue there was write speed to the card).
So I've really come to like a few of the roms, in particular one I'm liking right now VERY MUCH is MIUI 1.11.9. What a nicely put together package that is. I would really really like to stay with it.
However, it's huge. With that and two apps (Gmail and Facebook), I'm lucky if I have 14 mb left over. Obviously, this causes crashes and reboots left right and center. Camera usage is almost impossible. But, I'm willing to admit, the problem is likely my fault, because I have not done anything to manipulate swap/ext/etc on my sd card. I have the phone, and I have a formatted 16 gb class 10 sd card.
I've looked through 10 pages of threads and to be honest I'm finding it hard to know where to begin. I'm convinced, however, that if I can learn what swap ext/ext2/ext3 do, and how to create/use them..and whatever else, that MIUI and probably a few of the other roms will be amazing for me.
So is someone bored over the holidays here and can help either point me in the right direction of a Guide to do this, or maybe even write a bit about it for me? Assume I know nothing about how to create a swap, an ext, link2sd, any of it. I don't know how to use terminal emulator, modify or execute scripts...but I can learn!!
I realize that I'm asking for info that is probably obtainable by reading numerous other threads..but I can't find anything truly comphrensive..it's too bad threads couldn't be "stickied"...this subject seems crucial to me in order to get some of these roms to run ok. Many of them operate the same way: they take up 100 mb or so, and they don't allow for easy moving of apps to the SD card.
Anyways many thanks in advance if you can help. I'm sure there's a few others who could probably use a refresher in this also.
I'm learning alot about this and hope to update this thread with my own tips for how to do this in the coming days.
That is, if anyone is interested. If so, hit me with a msg.
Sent from my Milestone XT720 using XDA App
internal upgrade?
can someone tell me how to upgrade the internal memory because im getting very low in phone memory.. are there any solutions like using the 1GB for the internal memory of my 8GB card?
Well, you cant physically expand the memory but you can virtually via an extended primary partition and an app like link2sd.
Sent from my Milestone XT720 using XDA App
Hey acrobat69
I am pretty much the same boat as you. I have tried a bunch of ROMs, and I am still on 6.3 rc3 now.. went back and tweeked after learning some things and this is the least buggy for me at the moment.
I also do not use swap at the moment.. but this is also something that those in the know here on the Xt720 forums have debated.. how useful is it???
I would love to try swap.. or any other tips you might have.. so I at least will be listening.
I would like to get FM radio working on 6.3 rc3 too.. no luck so far.
I have found that when you overclock.. some speeds and Vsel work better in some roms.. or applications.
I saw one fellow who was running 800/48vsel - overall nice and great for battery usage.. but camera would not work at 48vsel.. would crash it .. running several highpower apps like wifi tether and gps at the same time would crash a low vsel set phone..
SO I know there are many factors that you can tune to make a rom work best for you.
James
When I get back to my PC, ill type something up on this for you as well as archer's other thread similar to this Q.
FYI, FM radio works since 6.3.0 RC4. Well at least as much as FM radio "works" on any of the non-stock-based ROMs at the moment-- volume control is difficult/problematic.
I think 6.3.6 is a good choice if you don't mind disabling the hardware button lights. And if it does bother you, I can make a patch that puts the lights back as the were in RC3 (but would disable notification leds).
Sent from my Milestone XT720 using xda premium
Ok so to answer a few of the above questions, I'll try to break it up into sections. Ext2/3/4, Swap and basic memory management.
Ext partitions: since our XT's are so low on memory, a fair while back some scripts were created to make it so that when you downloaded an app, it went into your ext partition and not to the internal. Remember that this was when we had 2.1 and Froyo was only a dream. As you know Froyo has the native App2sd function where you can move most of the app's data/function to your SD card via the .androidsecure folder on your card. Since this was not a function on 2.1 we needed a bypass. This was done by creating a EXT partition on your SDCard to bypass/hijack the installation process and "force" the apps to install to the SDCard rather than the meager internal memory. Since the grand old days, we have evolved that function from app2sd to app2ext where now the /cache can be moved over to the partition as well, in addition to apps like Link2sd with one-click UI to do it for you.
This is how to do it.
1 Make sure your ROM supports app2ext-it should be in that ROMs OP.
2 You need to use GParted or Minitool Partition Wizard to create your Ext2/3 partitions (do not create an Ext4 with either of these b/c they won't work correctly, most ROMs don't support it and you can convert it from 2/3 to 4 in MZ's open recovery).
3 You have a 16gb card and are asking what size should I make my partitions. They need to be in this order-FAT/EXT/SWAP from L->R. FAT is what it sounds like. It is your biggest sized one (and make it Primary/Bootable in your partition wizard). Your Ext is going to be up to you on the size. I usually recommend 350-450mb. Anything bigger is really wasted space. In fact, I chorgle to myself when I see people with 1gb Ext partitions b/c your average size app is usually about 7-12mb (with something like Angry Birds at a meaty 18mb). Remember that 1gb=1024mb. 12mb vs 1024mb-see what I am saying here?
4 So now you have your partitions set up. How do you activate it. You flash your ROM and let it settle down. Get ROOT and open a file manager and go to the ROOT. You will see a folder labeled SD-ext. Open this folder and make another folder called App (not Apps-no S) or if you are using Link2sd, you would put a folder called Link2sd (not LinkS2sd-again no S). Reboot and BAM!!!once it boots up, all your apps that you had will be in there and any new ones will be installed there saving you tons of internal space.
I'll cover Swap tomorrow b/c I am tired of typing for now but here is a thread on some unknown types of memory management that you can do on your own.
Sorry for the long post but I wanted to make it as general as possible so that it wasn't too technical.
Woodrube thank you very much for that, indeed very helpful and to the point. Ill hit you with a thanks when back on my laptop.
James: debates nothwithstanding, I can't see how its possible to install one of these Roms and actually use it...and any decent number of apps with stability, without using the extended partition. I have not had any success until I learned how to do this. Therefore, were absolutely not going to debate it, just do it!
To Woodrubes excellent instructions I will add these tips, learned from Mio7's advice and trial and error:
- do any partitioning before you install your new rom, and do it via a card reader inserted into your computer, not by plugging the phone into the computer via usb.
- do not make the second partition fat. In some threads people said it worked however it never works for me. Create the second partition as ext2 , then go to open recovery and convert it to ext3
- use root explorer to create the folder in sd-ext as Woodrube advised. Make sure root explorer is in R/W mode not R/O or you wont be allowed to
- install Link2sd first of any program. It's when you're running link2sd it seems that you can't create the link for certain applications check the market to see if to the downloadable version then uninstall the app from the phone and reinstall it yourself then when you go back into linksd youll be able to create a link. I'm still experimenting with just how much I can rip out of the system and then reinstall myself so as to be able to move over to the sd card. Btw if the rom app manager wont let you uninstall, use the uninstall function in link2sd. It works, even tho it says "Failed" when done.
See the signature at the bottom of my thread that should be all you need to know about whether not the advice in this thread is good because I'm posting from my phone and I'm using voice to text
Next up I'm going to try installing other roms like MIUI or 7.1 to see you what ones this can be used on. I will post my successes and failures in this thread
Sent from my Milestone XT720 using XDA App
With regard to milestone overclock settings I'm currently running 900 and 60 and have achieved general stability with no crashes during picture taking or video recording
Sent from my Milestone XT720 using XDA App
Mio: Nooo don't disable LED its great the way it is. Who needs those backlights anyways the keys are far enough away to not need a light to tell my thumbs where to go by now
Sent from my Milestone XT720 using XDA App
hi guys,..
i want to ask is there any way i can make swapfile on gtab 7+ running hc 3.2? or there is no posibility to make swapfile on honeycomb? i've tried to make the swapfile using dd command from terjinal, but somehow im stucked on setting permission for the file, the file i've created always have special permission that i can't change to rw-r-r, it always stayed rw-rSw-r, im a newbie on linux things, and willing to learn.
any help really appreciate.
thanks.
Okay, you say that you're a newbie to linux. That's fair and reasonable. I'm going to try and teach you some things by way of asking questions. They might sound like I'm attacking you, but I'm not...
Do you know you are trying to create a swap file? What do you hope to gain by doing so?
Is this one of those mythical magical things that someone claims will make the tablet run 50395920 times faster, allow it to brew coffee, and make your car get better fuel mileage?
...and some answers...
Within the android environment, a swap file is a BAD THING. The entire system is designed to drop stuff out of memory if/when it needs more memory, and the overhead of a swapfile will cause more harm than good.
Take care
Gary
garyd9 said:
Within the android environment, a swap file is a BAD THING. The entire system is designed to drop stuff out of memory if/when it needs more memory, and the overhead of a swapfile will cause more harm than good.
Click to expand...
Click to collapse
It's not that dramatic. Most of "the overhead of a swapfile" is overhead you're already committing to by utilizing a VMM (Virtual Memory Manager). The Dalvik VM doesn't do a whole lot of its own memory management so implementing a swapfile at the OS level, which is what the OP is looking to do, wouldn't have a huge impact on performance.
The only time where you'd have any real overhead of maintaining a swapfile is when memory is full and the OS pages out memory to disk. But remember that the alternative is to close down the process and run some garbage collection. Both are intensive actions - swapfile is I/O intensive while GC is CPU and memory intensive - so you're really trading one source of overhead for another.
To answer the OP's question, it sounds like you haven't rooted the tab. You would need to be root in order to change the perms as you described. If you are rooted, make sure you're using the right command to set permissions - I haven't tried this specifically on Android but from my *nix experience, the command you want is chmod 644 <path to file>
---------- Post added at 09:24 PM ---------- Previous post was at 08:39 PM ----------
Almost forgot, what kernel are you using?
im using stock kernel 2.6.36, kk6 rooted. i've tried to chmod the swapfile, but still cant change the permission, i usually use root explorer to change the permission, but now it doesn't take effect. the file permission r8 now is rw-rwSr--, the "S" thing is making the swap cant be aplied (i guess).
back there when i use optimus (gingerbread), swapfile is default from stock rom. is it have something to do with honeycomb?
thanks for your reply.
garyd9 said:
Okay, you say that you're a newbie to linux. That's fair and reasonable. I'm going to try and teach you some things by way of asking questions. They might sound like I'm attacking you, but I'm not...
Do you know you are trying to create a swap file? What do you hope to gain by doing so?
Is this one of those mythical magical things that someone claims will make the tablet run 50395920 times faster, allow it to brew coffee, and make your car get better fuel mileage?
...and some answers...
Within the android environment, a swap file is a BAD THING. The entire system is designed to drop stuff out of memory if/when it needs more memory, and the overhead of a swapfile will cause more harm than good.
Take care
Gary
Click to expand...
Click to collapse
thanks m8 for your lighten up of linux, i really appreciate it. just from my experient when im using optimus (gingerbread) i never felt lack of memory when using multitasking (it only has 512mb ram). but now when i using gtab (with 1gb ram or 778mb?) first it fast on multitasking but about 10 minute later it getting slower, when i check with task manager, it only has 80mb left??
is it me or is it gingerbread have better ram management than honeycomb, and so if it is, im trying to make swapfile in hope that its getting better. i use v6 supercharger, kill all proccess when it turn to standby by automatic, overclocking to 1,6ghz, but still i can make the ram more efficient when running on multitasking.
hope you understand for what im going to achieve.
thanks.
h2g2 said:
It's not that dramatic.
Click to expand...
Click to collapse
Are you suggesting that using an OS-level "generic" swapfile on flash memory is better or even equivalent to using a system/purpose built solution?
The linux kernel has no way to know if the memory its swapping out is even needed anymore. The android system, however, does know this - and will often discard allocations.
Let's say you run two applications: email and the browser. The browser has several pages loaded with flash, and lots of memory intensive stuff going on. Also in memory is the code that syncs your email in the background and several other "non critical" services (such as SMS, latitude, etc.) and a few critical services (such as some wifi support, display support, framework, etc.)
Keep in mind that if android requests memory, and there's a swapfile, the kernel will claim it has memory backed by swap... So given a large enough swapfile, the kernel will never tell android that it's running short on memory...
Given the above situation, the user now wants to run Angry Birds. There isn't enough physical RAM to support all of the above in memory AND Angry Birds. What will happen?
If there's no swapfile, android will see there isn't enough RAM to support it, and simply drop the browser and email client from memory, but keep the services in memory. Angry birds loads, and the user is happy.
IF there IS a swapfile, however, then android will see that there is RAM to support AB along with everything else in memory, and just load Angry Birds. When that happens, the linux kernel will have to swap pages of memory out to the flash memory. The KERNEL doesn't know the difference between the email client, the email service, the browser, or any other "non-critical" service. All those memory pages are flagged the same. So, perhaps the browser gets swapped out. (wasted cycles - it could have been discarded.) The email client is retained in RAM, but the email service is swapped out to flash. Angry Birds loads. 5 minutes later, Angry Birds freezes and gets jumpy... why? Because the email service has to be swapped back into RAM, and something else swapped out in its place. This time it was latitude. A few minutes later, latitude wants to update your position, so the same thing happens. What gets swapped this time?
Why spend the cycles swapping things in and out of RAM? There is plenty of memory on these devices to support all the services and memory hungry games. If some game has a memory leak, you SHOULD be getting errors from running out of memory and NOT blissfully swapping things to flash.
I'm not going to tell people how to use their devices. I'm going to try and give them advice, but I certainly can't force people to take it. As a matter of fact, I'll even encourage the technical minded to explore and break things to learn on their own.
However, when a person asks the question I see in the OP, and admits that they are new to linux, then I suspect that they aren't technically minded and exploring, but blindly following the "suggestion" of someone else who promises all kinds of silly things. It reminds me of someone who disabled kernel panic reboots and claimed that it was a tweak to make the system more stable... and had many people actually believing that.
There's a good reason why google hasn't enabled swapping, and there's even less of a reason with devices that come with 1GB of RAM.
Take care
Gary
---------- Post added at 01:45 AM ---------- Previous post was at 01:25 AM ----------
danielkaboom said:
is it me or is it gingerbread have better ram management than honeycomb, and so if it is, im trying to make swapfile in hope that its getting better. i use v6 supercharger, kill all proccess when it turn to standby by automatic, overclocking to 1,6ghz, but still i can make the ram more efficient when running on multitasking.
hope you understand for what im going to achieve.
thanks.
Click to expand...
Click to collapse
First of all, try the same thing without that "supercharger" script. I've made clear my thoughts on that. In this case, using that script may or may not be allowing HC to do what its designed to do in regards to memory management. I'm not saying you should delete it - but to run tests without it.
If you are running low on FREE memory, that's not a bad thing. What good is the memory doing if it's not being used? Android will let an unused application linger in RAM as long as they wants so long as nothing else needs that RAM. As soon as something else needs that RAM, those unused apps will be purged (garbage collection.)
Having a swap file directly contradicts any effort to purge things from memory. A swapfile will encourage the system to swap things to flash as virtual memory. Sure, your "free memory" number might be bigger, but it will slow the system down when it's swapping things out to and in from flash memory. (A blunt question Are you chasing numbers or actual performance?
How do you expect to make memory MORE efficient by always having it be unused? Memory that's not being used is wasted. If my desktop machine (that has 16GB of RAM) has only 6GB being used, then I have 10GB of RAM wasted. I'd rather that memory be used to store an application I might go back to using, or used as cache. Completely unused RAM is completely wasted RAM.
I understand that you might be caught up in the whole thing with overclocking, having as much free RAM as possible, and having nice benchmark numbers. The thing is.. NONE OF THAT MATTERS.
Want higher benchmark numbers? I can make you a kernel that will give you insanely high numbers. Your device will suck for actual use, but you'll get high benchmarks.
Want a big "free RAM" number? Never run any apps, never get email, don't do anything at all with the device. It'll be an expensive paperweight, but you'll always have lots of free (and completely wasted) RAM.
Try this: make a backup of your system and then go back to stock. Use your tablet in a factory state for a few days. Then root it and disable some of the things that might be chewing the battery. Don't overclock, don't install scripts, and don't install a custom kernel. Use the device like that for a while. Actually USE the device - don't benchmark it, check task managers, etc. Just use it.
Now, how does it feel? No script, kernel, or anything else will make a dramatic performance increase. They can (and often do) make things slower, however. (That's why I'm very careful about modifications I make to my kernel...)
After using it stock for a few days, come back and tell us what you think - what you wish would be better in actual day to day use. (Again, benchmarks and numbers don't mean much...)
Take care
Gary
yes Gary,...to be honest, im blindly follow every1 that claims can tweaks or anything like tha, but when i tested it and using it, if its making my device getting "better" i kept it, if its making it worse than before, i let go.
in my opinion, slow, fast or faster is relative, it depends on every1 needs. for me loading game such as finalstrike hd in 5 sec is fast, but maybe different to others by loading it 20-30 sec is acceptable.
but if you said swapfile is bad and will only making it worse, then i'll accept that, but after im testing it. for me, sugar is not sweet until my tounge said so, no offence.
again, thanks Gary for the explanation, thanks for opening my mind.
edit : ill try to follow your instruction first.
You should do what you feel like, but please don't get caught up in lots of people telling you that they have magic bullets to fix things (that really aren't even broken.)
That being said, you are having a technical problem and I just can't resist information sharing.
What directory are you trying to create the file in? /sdcard (or /mnt/sdcard) won't work.
Try /data
(/mnt/sdcard == /sdcard.. and they will force certain permissions via fuse/vold.) Unlike GB, with HC /data and /mnt/sdcard use the same space. (/mnt/sdcard is actually a fuse from /data/media.) (In GB, /data space was very limited. That's not the case with HC.)
Gary
still failed,...:
- create a file in /data (named swapfile.swp), using terminal
# dd if=/dev/zero of=/data/swapfile.swp bs=1024 count=128000
- check from root explorer, the file is now created.
# mkswap /data/swapfile.swp
# swapon /data/swapfile.swp
swapon /data/swapfile.swp = Function not implemented
any sugestion?
edit : the permission is now can be change to rw-r--r--(thx Gary)..but its still failed to swapon,..
edit 2 : from what i've read from other pages and sites,..is it because "kernel not support"?
garyd9 said:
Are you suggesting that using an OS-level "generic" swapfile on flash memory is better or even equivalent to using a system/purpose built solution?
Click to expand...
Click to collapse
There is no "system/purpose built solution" - the Dalvik VM uses the Linux kernel VMM functions for low level memory management (http://developer.android.com/guide/basics/what-is-android.html).
The linux kernel has no way to know if the memory its swapping out is even needed anymore. The android system, however, does know this - and will often discard allocations.
Click to expand...
Click to collapse
Yes it does. The VMM knows which pages are active, which are inactive, and - if an application has called free() on a pages it previously malloc()'d, it will know which pages are expired.
In fact, the VMM will often know more than the Dalvik VMs because each application runs in its own Dalvik thread with its own dedicated heap. Any individual Dalvik instance will only know the disposition of the heap for its own application.
The VMM, on the other hand, has visibility of all Dalvik threads and will know which threads are idle and which are active, which Dalvik threads have run garbage collection and free()'d a portion of their heap, etc.
Keep in mind that if android requests memory, and there's a swapfile, the kernel will claim it has memory backed by swap... So given a large enough swapfile, the kernel will never tell android that it's running short on memory...
Click to expand...
Click to collapse
No, it won't. That's not how the swapfile works. What you're describing is more akin to memory-mapped file I/O, which is related (in that the VMM plays a role in managing that address space) but not at issue (it's a completely separate operation from memory allocation and de-allocation).
Memory is requested by giving the kernel a malloc() command. The VMM will then check its page cache (the size of which is constrained by physical memory - regardless of whether there is a swapfile or not) and look for available space. If space isn't available, then the VMM will look for pages marked as expired. If there aren't enough expired pages, it will look for inactive pages (pages allocated by processes that are idle or supsended).
At this point, the VMM will either 1) discard the contents of the expired and/or inactive pages until enough free pages are available (if no swapfile is available) or 2), write the contents of the expired and/or inactive pages to the swapfile before discarding them until enough free pages are available.
Note that the presence or absence of the swapfile has no bearing on what pages are chosen. And again, regardless of whether there is a swapfile or not, if there aren't enough expired and/or inactive pages to get rid of, malloc() returns a null pointer. In otherwords, you will get out of memory errors even with a giant swapfile.
Given the above situation, the user now wants to run Angry Birds. There isn't enough physical RAM to support all of the above in memory AND Angry Birds. What will happen?
If there's no swapfile, android will see there isn't enough RAM to support it, and simply drop the browser and email client from memory, but keep the services in memory. Angry birds loads, and the user is happy.
IF there IS a swapfile, however, then android will see that there is RAM to support AB along with everything else in memory, and just load Angry Birds. When that happens, the linux kernel will have to swap pages of memory out to the flash memory. The KERNEL doesn't know the difference between the email client, the email service, the browser, or any other "non-critical" service. All those memory pages are flagged the same. So, perhaps the browser gets swapped out. (wasted cycles - it could have been discarded.) The email client is retained in RAM, but the email service is swapped out to flash. Angry Birds loads. 5 minutes later, Angry Birds freezes and gets jumpy... why? Because the email service has to be swapped back into RAM, and something else swapped out in its place. This time it was latitude. A few minutes later, latitude wants to update your position, so the same thing happens. What gets swapped this time?
Click to expand...
Click to collapse
So bearing in mind that the Linux kernel VMM is ultimately responsible for choosing what gets dropped or swapped out of memory and also bearing in mind that only inactive or expired pages are eligible to be dropped/swapped, we can see that the situation you describe will never happen.
The behavior of, from the user's perspective, what applications get shoved out of active memory (regardless of whether they end up in the swapfile or in /dev/null) doesn't change. In the same way that the Linux VMM will never drop pages associated with an active process (such as the email sync service, the Wifi driver, etc), the Linux VMM will likewise never swap these pages out either.
Why spend the cycles swapping things in and out of RAM? There is plenty of memory on these devices to support all the services and memory hungry games. If some game has a memory leak, you SHOULD be getting errors from running out of memory and NOT blissfully swapping things to flash.
Click to expand...
Click to collapse
Consider the scenario you spelled out previously - without the swapfile, the pages associated with the Browser app will get dropped and make room for Angry Birds. Good news: Angry Birds starts up faster.
With the swapfile, the pages associated with the Browser app will get swapped out to make room for Angry Birds. This will take longer since there's some file I/O involved. Bad news: Angry Birds starts up slower.
So what's the use case for the swapfile? What if you want to go back to the browser again? Without the swapfile, the Browser is gone. You have to launch it - the application binary needs to be read off disk, executed, the heap has to be re-allocated, re-initialized, and program data needs to be populated. The page you wanted is gone - you need to fetch that again. More waiting while it downloads from the server and the HTML code is rendered on the screen.
In this scenario, reading the heap back into memory from the swap file is actually more efficient than recreating it - even if you ignore the obvious benefit of not having to relaunch the app and reload the page, there's substantial overhead associated with relaunching the app.
So that's the use case - maybe it's not applicable to you if (although maybe someone who wants to go back and forth between Angry Birds and a cheat guide on a G1 might appreciate this) but if you are multitasking across several memory-intensive apps, then the benefit of not having to re-invent the wheel, so to speak, to recover the application state can outweigh the cost of paging the application state out to disk.
I'm not going to tell people how to use their devices. I'm going to try and give them advice, but I certainly can't force people to take it. As a matter of fact, I'll even encourage the technical minded to explore and break things to learn on their own.
However, when a person asks the question I see in the OP, and admits that they are new to linux, then I suspect that they aren't technically minded and exploring, but blindly following the "suggestion" of someone else who promises all kinds of silly things. It reminds me of someone who disabled kernel panic reboots and claimed that it was a tweak to make the system more stable... and had many people actually believing that.
Click to expand...
Click to collapse
I have no problem with dissuading people of the notion that some hack is going to instantly and unequivocally make their system better. But I think the proper response, especially on a forum like this, is to present the facts of the matter and not just a knee-jerk contrarion reaction. Simply dismissing the swapfile as a "BAD THING" doesn't really help the OP learn more about it, at the very least.
I'm with you on disabling kernel panic reboots, though. That's just stupid.
There's a good reason why google hasn't enabled swapping, and there's even less of a reason with devices that come with 1GB of RAM.
Click to expand...
Click to collapse
Maybe, maybe not. Android 2.1 and earlier didn't implement JIT. Android 2.2 and earlier didn't implement EXT4. Android 2.3 and earlier didn't implement GPU-accelerated UI compositing. Android 3.2 and earlier didn't implement ASLR. Does that mean these were considered undesirable by Google at one point in time? Or were they always on Google's list of things they wanted to do and they just hadn't gotten around to them yet?
---------- Post added at 01:56 AM ---------- Previous post was at 01:41 AM ----------
danielkaboom said:
still failed,...:
- create a file in /data (named swapfile.swp), using terminal
# dd if=/dev/zero of=/data/swapfile.swp bs=1024 count=128000
- check from root explorer, the file is now created.
# mkswap /data/swapfile.swp
# swapon /data/swapfile.swp
swapon /data/swapfile.swp = Function not implemented
any sugestion?
edit : the permission is now can be change to rw-r--r--(thx Gary)..but its still failed to swapon,..
edit 2 : from what i've read from other pages and sites,..is it because "kernel not support"?
Click to expand...
Click to collapse
Yes, the kernel needs to have swapfs support. If you've ever played around with EXT4 kernels or ROMs that required EXT4 kernels, for example, it's kind of the same idea.
It sounds like the stock GT7+ kernel does not have this so you will need to find a custom kernel that does. I'm going to go out on a limb and guess that garyd9's kernel does not support swapfs.
Without the kernel, you're out of luck.
Regarding your situation on your Tab, it sounds like you've got an app or two that's misbehaving. Have you tried throwing up a CPU monitor? It would be useful to know whether the slowdown is caused by the CPU getting busy, and whether this load is from a single app or not.
Thank you for explaining that. Are there any examples, other than the one you mentioned, in which Android would benefit from a swapfile?
reading both pros and cons about swapfile really makes my head spinning,... im trying to understand it little by little. thanks guys for the explanation.
and yeah, guess im run out of luck,..(cause i don't have enough skill to make the kernel on my own,..sigh).
thanks.
danielkaboom said:
reading both pros and cons about swapfile really makes my head spinning,... im trying to understand it little by little. thanks guys for the explanation.
and yeah, guess im run out of luck,..(cause i don't have enough skill to make the kernel on my own,..sigh).
thanks.
Click to expand...
Click to collapse
It is a complicated issue with lots of tradeoffs in both directions.
I'm still curious as to the specifics of your problems, though. Garyd9 is correct in saying that creating a swapfile may not help your particular issue but that doesn't mean there isn't some other way to fix it. We just need more information about what's going on on your tablet.
---------- Post added at 05:49 PM ---------- Previous post was at 05:29 PM ----------
nyarltep said:
Thank you for explaining that. Are there any examples, other than the one you mentioned, in which Android would benefit from a swapfile?
Click to expand...
Click to collapse
Fundamentally, it breaks down to a store vs. recalculate issue - do you store memory pages to the swap file and incur the storage I/O overhead or do you discard it and recalculate it later and incur the cpu and memory I/O overhead? All of these resources are in short supply on the GT7+.
A swapfile works best with applications that maintain steady states that can easily be swapped out and back in as needed. A swapfile is least effective for active background processes.
If, for example, you're running out of memory running too many apps in the background - think clients for sync services, streaming media, system monitoring, etc. - a swapfile is not going to help.
However, if you're running into situations where you are switching between multiple apps such as document viewers/editors, and are finding that you need to reload documents as the apps get silently killed in the background, a swapfile could potentially help.
The only real way to know is to test it but without a kernel with swapfs support for the GT7+, it's impossible to say for certain.
from the opinion, i guess using swapfile for backround process is useless, but using it to switching task (for example : im using browser with lot of pages and beside that im doing some paperwork on office aplication) will help a bit, am i r8? if its r8, then im willing to try using swapfile, because i already freeze/uninstall some aplication that running on backround but still give me lags, when i did the example above.
but again, im running out of luck,..until Garyd9 or any1 else kind enough to make kernel that support swapfs,...
thanks for both of you, for your effort to answering my noob question.
regards,
dan
PS : Gary, i've tried your instruction, and yes it makes my daily use better,...though im still curious using swap,...hehehe.
danielkaboom said:
from the opinion, i guess using swapfile for backround process is useless, but using it to switching task (for example : im using browser with lot of pages and beside that im doing some paperwork on office aplication) will help a bit, am i r8? if its r8, then im willing to try using swapfile, because i already freeze/uninstall some aplication that running on backround but still give me lags, when i did the example above.
but again, im running out of luck,..until Garyd9 or any1 else kind enough to make kernel that support swapfs,...
Click to expand...
Click to collapse
Background processes are fine to swap out if they're steady state, it's active background processes that aren't going to benefit from a swapfile.
However, the lags you're experiencing may continue to persist depending on what is causing those lags. A swapfile won't help if you've got a poorly-optimized app running, particularly one that is not efficient with memory allocations. It also won't help if the lags are caused by a Dalvik thread performing garbage collection on its heap (whether the app on that thread is efficient in its memory allocations or not).
My educated guess is that if you are experiencing lags while using an active, foreground application, then this is not a problem that will be fixed with a swapfile. On the other hand, if you are experiencing lags launching new applications or bringing background apps into the foreground, these types of lags may be reduced with the use of a swapfile though the only way to know for sure is to test it.
I don't have time for an indepth reply to h2g2, but I'll reply simply:
You seem to be knowledgable enough to recompile a kernel - so please feel free to pull my kernel sources and initramfs, turn on swapping (samsung has it disabled by default), and try it. Keep an eye on the swapping and memory stats, as well as what's being swapped, etc... You might be surprised.
(If I had time, I'd do the same.. I've been wrong before and I might be wrong again... )
In either case, Daniel, I'm glad that turning off all that excess crap helps. As much as we all complain about this tablet, it actually runs pretty good without many modifications. If you read the changes I've made in the p6210 kernel, you'll see that I really haven't done much to it. The most invasive change was adding stuff that Samsung didn't have in there (such as UV.)
Take care
Gary
garyd9 said:
I don't have time for an indepth reply to h2g2, but I'll reply simply:
You seem to be knowledgable enough to recompile a kernel - so please feel free to pull my kernel sources and initramfs, turn on swapping (samsung has it disabled by default), and try it. Keep an eye on the swapping and memory stats, as well as what's being swapped, etc... You might be surprised.
(If I had time, I'd do the same.. I've been wrong before and I might be wrong again... )
Click to expand...
Click to collapse
Just to be clear, I have no real stake in this except to make sure that the technical facts about the swapfile are presented properly. In much the same way that you've been frustrated hearing about people recommending that they disable kernel panic reboots, I also am frustrated when people have a knee-jerk "swapfile = terrible" reaction that is largely based on FUD.
That said, you're right, I should just test it myself when I've got some free time.
Dusted off my old Nexus One, loaded up a clean install of CM7 and installed a kernel with CONFIG_SWAP=y. I decided to go with a swap partition on my sd card rather than a swapfile but the effect should be the same.
I haven't had time to do extensive testing but so far but I can confirm that swap is working and I haven't yet noticed a major perceptible impact to performance of the device.
Code:
# free
total used free shared buffers
Mem: 403240 379288 23952 0 60
-/+ buffers: 379228 24012
Swap: 62696 27948 34748
# grep "pswp" /proc/vmstat
pswpin 192
pswpout 7059
---------- Post added at 01:37 PM ---------- Previous post was at 12:49 PM ----------
Been switching back and forth between apps for a while now, paying particular attention to apps like Google Earth and the Browser that load up lots of data.
One particular test that seemed to stress the memory subsystem was using the "Print this page" on multi-page articles on graphics-heavy sites like, e.g. Anandtech (had the Snapdragon S4 review up). With swap enabled, there was a delay of 1-2 seconds when switching back to the browser (no doubt from reading the appropriate pages back into memory) but without the swapfile, the session was gone and the page needed to be reloaded, which took much longer than 1-2 seconds.
Some caveats:
1) I used a rather small swap partition (64MB) compared to the amount of memory available on the device (512MB for the N1). This means that I didn't need to do too much tweaking to the lowmemorykiller settings.
2) I set swappiness to 100, which is intentionally a bit heavy-handed (default seems to be 60).
3) I did not tweak other settings such as dalvik.vm.heapsize, vfs.
_cache_pressure, page-cluster and, as mentioned in #1, lowmemorykiller/parameters/minfree.
Code:
# free
total used free shared buffers
Mem: 403240 390824 12416 0 36
-/+ buffers: 390788 12452
Swap: 62696 59684 3012
# grep "pswp" /proc/vmstat
pswpin 6061
pswpout 31228
h2g2 said:
Dusted off my old Nexus One, loaded up a clean install of CM7 and installed a kernel with CONFIG_SWAP=y. I decided to go with a swap partition on my sd card rather than a swapfile but the effect should be the same.
I haven't had time to do extensive testing but so far but I can confirm that swap is working and I haven't yet noticed a major perceptible impact to performance of the device.
Code:
# free
total used free shared buffers
Mem: 403240 379288 23952 0 60
-/+ buffers: 379228 24012
Swap: 62696 27948 34748
# grep "pswp" /proc/vmstat
pswpin 192
pswpout 7059
---------- Post added at 01:37 PM ---------- Previous post was at 12:49 PM ----------
Been switching back and forth between apps for a while now, paying particular attention to apps like Google Earth and the Browser that load up lots of data.
One particular test that seemed to stress the memory subsystem was using the "Print this page" on multi-page articles on graphics-heavy sites like, e.g. Anandtech (had the Snapdragon S4 review up). With swap enabled, there was a delay of 1-2 seconds when switching back to the browser (no doubt from reading the appropriate pages back into memory) but without the swapfile, the session was gone and the page needed to be reloaded, which took much longer than 1-2 seconds.
Some caveats:
1) I used a rather small swap partition (64MB) compared to the amount of memory available on the device (512MB for the N1). This means that I didn't need to do too much tweaking to the lowmemorykiller settings.
2) I set swappiness to 100, which is intentionally a bit heavy-handed (default seems to be 60).
3) I did not tweak other settings such as dalvik.vm.heapsize, vfs.
_cache_pressure, page-cluster and, as mentioned in #1, lowmemorykiller/parameters/minfree.
Code:
# free
total used free shared buffers
Mem: 403240 390824 12416 0 36
-/+ buffers: 390788 12452
Swap: 62696 59684 3012
# grep "pswp" /proc/vmstat
pswpin 6061
pswpout 31228
Click to expand...
Click to collapse
little of my understanding, if a swapfile is made in an external sd, the sd card must have good r/w capability (minimum required a class 6 sd card), what if the swapfile is made in internal sd (since GTab have 12gb planted chip memory), what is the effect?
and so,....would you be kind enough to build a kernel for GTab 7+ that support swapfile? and if you do, can you do with a flashable zip (which i can flash it through cwm recovery?
so i can answer my own question : swap or not to swap?
and of course if you have spare time
thanks
dan
danielkaboom said:
little of my understanding, if a swapfile is made in an external sd, the sd card must have good r/w capability (minimum required a class 6 sd card), what if the swapfile is made in internal sd (since GTab have 12gb planted chip memory), what is the effect?
and so,....would you be kind enough to build a kernel for GTab 7+ that support swapfile? and if you do, can you do with a flashable zip (which i can flash it through cwm recovery?
so i can answer my own question : swap or not to swap?
and of course if you have spare time
thanks
dan
Click to expand...
Click to collapse
I'm using a Class 2 8GB MicroSDHC card from Sandisk on my Nexus One for testing and it seems to be fine. I'd recommend using an external SD because it's replaceable and swap I/O will wear out your flash faster so you're better off segregating it.
I took a look at the state of the kernel source for the GTab7+ at the moment and it looks like the Samsung sources are out of date and a kernel built from the current sources won't run properly on the LA3 firmware (Garyd9 notes this in the thread for his kernel as well) so right now, building a custom kernel is a nonstarter for me because the LA3 firmware fixed some pretty major shutdown issues for me on my Tab.
Perhaps when the ICS sources are released, I'll take another look.
TL;DR Ramexpander set at 4gb swap file makes all the difference for this tablet
A little background: I've been modifying my phones since the galaxy nexus. I've tried greenify, amplify, debloating, kernels, overclocking, cleaning, l-speed, etc. I like to run a lot of apps, and all of my phones and devices, including the Nexus 6p (until the Pixel XL) lagged. RamExpander has been the solution every time, and the fire hd is no different. This one: https://play.google.com/store/apps/details?id=com.swapit.expander.de&hl=en .
Use the free version here to check if your device is compatible: https://play.google.com/store/apps/details?id=com.roehsoft.meminfo&hl=en but I know a rooted 2017 Hd 10 running 5.6 is compatible.
Maybe your device runs perfectly already and/or you're using less apps. That's great! But I have seen a few threads about trying to optimize performance. IF your device lags, this app will make an immediate night and day difference.
I'll give it a try
I have L Speed and Greenify installed on all of my rooted Android devices. Could you please explain to us how RAMEXPANDER is better than L Speed/Greenify? I'm curious. I'll do anything to optimize these Fire HDs even more. I rooted them and installed Google everything on them so my parents don't have to deal with the Fire OS.
Is Ram Expander really worth $10? I wanted to try it and found an APK. The damned thing was contaminated with neverending ads appearing every 10 seconds... I had to uninstall and run Malwarebytes to get the tablet working fine again. I assume the "real" paid version has no crappy ads?
---------- Post added at 01:09 AM ---------- Previous post was at 01:08 AM ----------
bakshi said:
I have L Speed and Greenify installed on all of my rooted Android devices. Could you please explain to us how RAMEXPANDER is better than L Speed/Greenify? I'm curious. I'll do anything to optimize these Fire HDs even more. I rooted them and installed Google everything on them so my parents don't have to deal with the Fire OS.
Click to expand...
Click to collapse
I know Greenify already and use it on my tablets and cell phones. But it's the 1st time ever I hear about L Speed. Is it complicated to set up?
The 2GB memory is pretty limited, and disabling some Amazon services and avoiding apps that remain persistent in memory is highly recommended. I installed the official Google app to get Google Assistant, but found that it used too much ram. I recommended installing system monitor and monitoring the active processes, sorted by ram usage, to identify bloated user apps.
bakshi said:
I have L Speed and Greenify installed on all of my rooted Android devices. Could you please explain to us how RAMEXPANDER is better than L Speed/Greenify? I'm curious. I'll do anything to optimize these Fire HDs even more. I rooted them and installed Google everything on them so my parents don't have to deal with the Fire OS.
Click to expand...
Click to collapse
so what ram expander does is it's just a super easy way to setup a swap file (space on the internal sd card that will be used as RAM). Why is it better than all the other stuff I've tried? It's empirical, not logical. That is to say, every phone that's lagged, if RAMEXPANDER is compatible, I've installed and it's made a huge difference in performance, every single time. I've messed around with a lot of optimization tools beforehand and results have been mixed. I can improve battery life usually, but the phone will still lag, with those tools and with all the apps i run. Also, each tool is just more strain on the system.
metaleloi666 said:
Is Ram Expander really worth $10? I wanted to try it and found an APK. The damned thing was contaminated with neverending ads appearing every 10 seconds... I had to uninstall and run Malwarebytes to get the tablet working fine again. I assume the "real" paid version has no crappy ads?
---------- Post added at 01:09 AM ---------- Previous post was at 01:08 AM ----------
I know Greenify already and use it on my tablets and cell phones. But it's the 1st time ever I hear about L Speed. Is it complicated to set up?
Click to expand...
Click to collapse
I've never seen an add in the app. You got a bad APK.
An alternative, I've found, though less intuitive is an app called apps2sd. https://play.google.com/store/apps/details?id=in.co.pricealert.apps2sd&hl=en
It's a little less intuitive, but basically when you open the app, you get a bunch of tools to choose from. If you choose the SWAP menu, you can create a SWAP Partition on the /data partition. 4gb has been working amazingly for me. Then go to settings and check the "apply swap on boot" (after you test it for a while, and you're happy and everything's stable).
L-speed has a lot of options. It's got a few profiles, but I'm not sure that they actually work. With some messing around you can get a little improvement here and there (or maybe it's placebo). Sometimes an update of L-speed will bootloop your device, but I only use it on devices I have an nandroid ready to go on.
SWAP, through ram expander or apps2sd, makes a night and day difference compared to any other tool I've tried.
Does Ram Expander starts automatically at each reboot or it has to be started manually each time?
mistermojorizin said:
so what ram expander does is it's just a super easy way to setup a swap file (space on the internal sd card that will be used as RAM). Why is it better than all the other stuff I've tried? It's empirical, not logical. That is to say, every phone that's lagged, if RAMEXPANDER is compatible, I've installed and it's made a huge difference in performance, every single time. I've messed around with a lot of optimization tools beforehand and results have been mixed. I can improve battery life usually, but the phone will still lag, with those tools and with all the apps i run. Also, each tool is just more strain on the system.
I've never seen an add in the app. You got a bad APK.
An alternative, I've found, though less intuitive is an app called apps2sd. https://play.google.com/store/apps/details?id=in.co.pricealert.apps2sd&hl=en
It's a little less intuitive, but basically when you open the app, you get a bunch of tools to choose from. If you choose the SWAP menu, you can create a SWAP Partition on the /data partition. 4gb has been working amazingly for me. Then go to settings and check the "apply swap on boot" (after you test it for a while, and you're happy and everything's stable).
L-speed has a lot of options. It's got a few profiles, but I'm not sure that they actually work. With some messing around you can get a little improvement here and there (or maybe it's placebo). Sometimes an update of L-speed will bootloop your device, but I only use it on devices I have an nandroid ready to go on.
SWAP, through ram expander or apps2sd, makes a night and day difference compared to any other tool I've tried.
Click to expand...
Click to collapse
Thanks for this. Just did this with app2sd and working great!
metaleloi666 said:
Does Ram Expander starts automatically at each reboot or it has to be started manually each time?
Click to expand...
Click to collapse
It has an auto start feature
metaleloi666 said:
Is Ram Expander really worth $10? I wanted to try it and found an APK. The damned thing was contaminated with neverending ads appearing every 10 seconds... I had to uninstall and run Malwarebytes to get the tablet working fine again. I assume the "real" paid version has no crappy ads?
Here is a link for the premium: https://uplod.cc/4ogqacud4av9
If that doesn't work, check this link out: https://apk4free.net/roehsoft-ram-expander/
Click to expand...
Click to collapse
I keep trying to install this (the Google Play store version of ROEHSOFT RAM Expander) on a Fire HD10 with root via Kingoroot. I'm trying to install the swap disk on the SD card, and I'm getting an error message:
You have a Limited Kernel
Kernel Swapspace Limit detected! please reduce the Swapfile Size lower 1GB! and try again!
This happens no matter what size I pick for the swap file on the SD card.
If I try to use the same company's "test" app (MemoryInfo-SwapCheck), I get this error message:
Path Error
This Path is not usable for Swap!
I can verify that both apps are successfully creating the swap file on the SD card (swapfile.swp or swaptestf.swp, depending on which app I'm using).
I've tried both systems 5.5.0.0 and 5.6.0.1 and I get the same error message on either. I've tried installing it on a completely fresh install of both, with only Kingoroot, SuperSU, Google Play, and RAM Expander installed (in that order). I've also tried swapping out SD cards, and get the same error on both.
This software does work properly if I install the swap file on internal memory, but I'd prefer not to do that, since I can't replace the internal memory if I wear it out.
The weird thing is, I could swear it was working properly before (a couple of weeks ago), but nothing is getting this to work now. It's possible I was mistaken and had accidentally chosen the internal memory, but I don't think so.
Anyone have any clue about what's going on?
GamerOfRassilon said:
I keep trying to install this (the Google Play store version of ROEHSOFT RAM Expander) on a Fire HD10 with root via Kingoroot. I'm trying to install the swap disk on the SD card, and I'm getting an error message...
Click to expand...
Click to collapse
To respond to myself (in case anyone else has this problem in the future):
For some reason, this software doesn't work if you set the path to /storage/sdcard1 (It will create the swap file, but then it gives the error message I described).
Instead, you have to use:
/mnt/media_rw/sdcard1
Then it works totally fine.
Also, if it's useful (and saves anyone else time), here are the values that each option of this software generates on the HD10:
multitasking
SwpFile = 3000MB
Swappiness = 100
MinFreeKB = 54MB
DriveCache(KB) = 4096
balanced
SwpFile = 3000MB
Swappiness = 100
MinFreeKB = 62MB
DriveCache(KB) = 8192
gamers
SwpFile = 3000MB
Swappiness = 100
MinFreeKB = 62MB
DriveCache(KB) = 16384
net gamers
SwpFile = 3000MB
Swappiness = 100
MinFreeKB = 4MB
DriveCache(KB) = 1024
I have no idea what those options mean or do, but I went with "balanced" (since it seemed pretty middle of the road) but with SwpFile set to 4000MB instead of 3000MB.
Ramexpander etc.
I've paid for and been using RAMExpander for awhile now. It's a good app, and worth the money. That being said, App2SD is also an incredibly useful app, Pro or no. L-Speed is great as well. One thing to note, from what I've researched, editing your zram is also helpful as it compresses items in memory to free up space, and it is prioritized over Swap. Using the two in conjunction (having a zram file (250-500 MB seems to do the trick but you could probably go lower) and a decent sized swap file(mine is 8GB but I suspect this is massive overkill and 4 would work)) has left me with little to no lag, especially when paired with L-Speed's other exceptional tweaks. Jade Empire and Kotor run with 0 lag at top graphical settings.
Hope this helped clear up any questions.
Edit: If you use App2SD's partition manager you can set yourself up with a partition dedicated exclusively to Swap, then in Ramexpander change swap location to this partition in the settings. Ramexpander tops you out at 4GB, doing this is a good way to increase that threshold.
mistermojorizin said:
so what ram expander does is it's just a super easy way to setup a swap file (space on the internal sd card that will be used as RAM). Why is it better than all the other stuff I've tried? It's empirical, not logical. That is to say, every phone that's lagged, if RAMEXPANDER is compatible, I've installed and it's made a huge difference in performance, every single time. I've messed around with a lot of optimization tools beforehand and results have been mixed. I can improve battery life usually, but the phone will still lag, with those tools and with all the apps i run. Also, each tool is just more strain on the system.
I've never seen an add in the app. You got a bad APK.
An alternative, I've found, though less intuitive is an app called apps2sd. https://play.google.com/store/apps/details?id=in.co.pricealert.apps2sd&hl=en
It's a little less intuitive, but basically when you open the app, you get a bunch of tools to choose from. If you choose the SWAP menu, you can create a SWAP Partition on the /data partition. 4gb has been working amazingly for me. Then go to settings and check the "apply swap on boot" (after you test it for a while, and you're happy and everything's stable).
L-speed has a lot of options. It's got a few profiles, but I'm not sure that they actually work. With some messing around you can get a little improvement here and there (or maybe it's placebo). Sometimes an update of L-speed will bootloop your device, but I only use it on devices I have an nandroid ready to go on.
SWAP, through ram expander or apps2sd, makes a night and day difference compared to any other tool I've tried.
Click to expand...
Click to collapse
Blaiser47 said:
Thanks for this. Just did this with app2sd and working great!
Click to expand...
Click to collapse
How did you set it up?
I swaped it on Sd card on my j7 & it became to freeze & became super slow...
What about using BK Disabler?
ThisCrimsonDiscordia said:
I've paid for and been using RAMExpander for awhile now. It's a good app, and worth the money. That being said, App2SD is also an incredibly useful app, Pro or no. L-Speed is great as well. One thing to note, from what I've researched, editing your zram is also helpful as it compresses items in memory to free up space, and it is prioritized over Swap. Using the two in conjunction (having a zram file (250-500 MB seems to do the trick but you could probably go lower) and a decent sized swap file(mine is 8GB but I suspect this is massive overkill and 4 would work)) has left me with little to no lag, especially when paired with L-Speed's other exceptional tweaks. Jade Empire and Kotor run with 0 lag at top graphical settings.
Hope this helped clear up any questions.
Edit: If you use App2SD's partition manager you can set yourself up with a partition dedicated exclusively to Swap, then in Ramexpander change swap location to this partition in the settings. Ramexpander tops you out at 4GB, doing this is a good way to increase that threshold.
Click to expand...
Click to collapse
Just out of curiosity, what are your L Speed settings?
I went with App2SD and L-Speed after reading this thread, and wow, it's practically a different experience, a different tablet. If you aren't doing something similar you're purposefully using a tablet that is gimped.
Here are the settings I went with:
App2SD swap is set to 4GB and placed in /data.
L-Speed has everything turned on as it would when first installed.
RAM Manager is set to balanced, seems like more than enough and I don't want to be plugged in frequently.
zRAM Optimization is set to on.
I then went back to swap settings and set the zRAM to priority 0 and /data set to 1.
Turned improved scrolling on.
Everything else was left as is, for now.
I can't believe this is the same tablet I was using a week ago.
No need for Greenify with this combination.
What size should i set the swap partition to?
Since the swap will be on the sd card, should I go with the Samsung MicroSDXC EVO Plus which has 100/60 read/write rates or the Samsung PRO Endurance which has better reliability (designed for continuous writes) in the long run but only 100/30 read/write?
lanbladez said:
What size should i set the swap partition to?
Since the swap will be on the sd card, should I go with the Samsung MicroSDXC EVO Plus which has 100/60 read/write rates or the Samsung PRO Endurance which has better reliability (designed for continuous writes) in the long run but only 100/30 read/write?
Click to expand...
Click to collapse
You could probably get away with 2GB, honestly. In which case, I'd really suggest putting it on internal in /data.
Just one less I/O delay (even if seemingly trivial, will cause lag) to deal with.
If you're going with putting the swap on an SD rather than internal, definitely the fastest SD you can use. :fingers-crossed:
If you must put it on the SD, at the least create a zram "swap" on internal, it only has to be ~150-300MB.