This may be a general question for all android devices or not but I was curious about adding swap space to this device. It has 1 gig of ram and many may consider that to be enough, and it might be. I have cyanogenmod 10.2 installed and tried to enable zram, 10% seems to be the best setting as anthing higher caused a game to pop up a notice saying something about low memory and defaulting to lower values. When I checked to see if zram was used however it turns out it was, about 25mb - 34mb after booting. The issue with zram is when multitasking with lecturenotes and moonreader, The tablet would reboot and my notebook that was open in lecturenotes would be missing notes I took or the settings would be greatly messed up, or both. This was with 10%.
I am thinking since it was used, it might be helpful to have an sd card for this reason, to aid in multitasking. This is important to me because I run several apps at once (I wish cyanogenmod had multi windows, and google wouldn't threaten over it). So the question is will there be a benifit to buying an sd card on ebay (class 10 of course) and using it as swap space. It seems this tablet might be on the cusp of the memory being enough. Also I am thinking this might help to future proof it a bit when updating to newer releases of gyanogenmod. The sd card I was thinking of is 4 gigs and may plan on having 1gb swap space (this tablet is for school and other work). The tablet has 32gb storage and that is more than enough for me (I am only using 3gb of space) so I wont need to add anymore storage.
I should also add that when multitasking without zram enabled, the tablet reboots less but still has done it, and so far nothing has been lost in my notebooks. I am thinking that the memory of 1gb is starting to reach its limit, with no apps running I am consuming about 600mbs of it.
vanquishedangel said:
This may be a general question for all android devices or not but I was curious about adding swap space to this device. It has 1 gig of ram and many may consider that to be enough, and it might be. I have cyanogenmod 10.2 installed and tried to enable zram, 10% seems to be the best setting as anthing higher caused a game to pop up a notice saying something about low memory and defaulting to lower values. When I checked to see if zram was used however it turns out it was, about 25mb - 34mb after booting. The issue with zram is when multitasking with lecturenotes and moonreader, The tablet would reboot and my notebook that was open in lecturenotes would be missing notes I took or the settings would be greatly messed up, or both. This was with 10%.
I am thinking since it was used, it might be helpful to have an sd card for this reason, to aid in multitasking. This is important to me because I run several apps at once (I wish cyanogenmod had multi windows, and google wouldn't threaten over it). So the question is will there be a benifit to buying an sd card on ebay (class 10 of course) and using it as swap space. It seems this tablet might be on the cusp of the memory being enough. Also I am thinking this might help to future proof it a bit when updating to newer releases of gyanogenmod. The sd card I was thinking of is 4 gigs and may plan on having 1gb swap space (this tablet is for school and other work). The tablet has 32gb storage and that is more than enough for me (I am only using 3gb of space) so I wont need to add anymore storage.
I should also add that when multitasking without zram enabled, the tablet reboots less but still has done it, and so far nothing has been lost in my notebooks. I am thinking that the memory of 1gb is starting to reach its limit, with no apps running I am consuming about 600mbs of it.
Click to expand...
Click to collapse
Well in my own personal testing i could not see any benefit while extracting 700mb archives under android with 4gb swap space on a 40mbs microsd card, while under full linux desktop with a same workload, swap differently helps keep the system smooth under heavy io load. The conclusion i drew was the android platform deals to memory management differently than the typical desktop os, due to slower emmc chips used as a boot disk for the majority of android devices using this slow, already bottlenecked memory as swap space doesn't make sense (not to mention the use of 2gb swap space on a limited 16gb storage etc), so android runs almost completely in ram, with stricter memory management and allocation allows android to run fine without swap space, although because of this, androids memory management makes little uses of available swap space
JoinTheRealms said:
Well in my own personal testing i could not see any benefit while extracting 700mb archives under android with 4gb swap space on a 40mbs microsd card, while under full linux desktop with a same workload, swap differently helps keep the system smooth under heavy io load.
Click to expand...
Click to collapse
I've been running my desktop without swap for the last 10 years, and as long as you have enough RAM for all your running programs, there will be no problem at all.
Extracting an archive is a mostly sequential operation (single read stream, single write stream), so it also doesn't benefit from caching, which could use the memory that is freed by swapping.
_that said:
I've been running my desktop without swap for the last 10 years, and as long as you have enough RAM for all your running programs, there will be no problem at all.
Extracting an archive is a mostly sequential operation (single read stream, single write stream), so it also doesn't benefit from caching, which could use the memory that is freed by swapping.
Click to expand...
Click to collapse
Ahh that makes sense. I wasnt sure if swap had an effect directly on the extraction, but seem keeped the rest system more stable/ smooth duing the process in the case of GNU/Linux, with swap off similar operations such as installing packages would more oftern lock the tablet up. Might be a placebo though
I also dont set swap on my Linux desktop, as it has plenty of ram but the benitfit of swap space is somewhat more noticable due to the lack of ram on the tf700.
JoinTheRealms said:
I also dont set swap on my Linux desktop, as it has plenty of ram but the benitfit of swap space is somewhat more noticable due to the lack of ram on the tf700.
Click to expand...
Click to collapse
I just want to share my user experiences on the swap space... It does seem to improve the tf700 with swap space due to the lack of RAM (1GB)..
Thanks for all the useful posts
Thanks for all the posts, I have my sd card on the way. I will post my experience when I get my sd card but I am sure it is safe to say there will be a benefit. I use linux to at home and have 8 gigs of ram on that computer, I lessen the swap after install to about 512mb because 8 gigs is more then enough. I leave some however just incase of any issues like ram going bad. On another computer in the house that has limited ram (1.5 gigs) I have enabled zram (384 mb) and added two old flash cards (1 gig each) to a pci raid card and those were converted to swap. I then altered the fstab to reflect the order of priority I wanted them used in. The reason is that when the swap is used from the hard drive, and the hard drive is being written to, can cause a slow down. So with the 2 flash cards at 1 gig each (the swap seen as 2 gigs) it seemed to speed it up. I just posted that because of the nix users and it seemed like a good plan to run it that way.
Ok, got the sd card
So I recieved the sd card today and applied the swap space to it using root swapper (max setting is 256mb, I figured i can find a way to increase it later if I need to). The defaut location in many of the swap applications will not work on this device however, the sd card mounts at /storage/sdcard1 in my case. So it has to be entered manually (might just be cyanogenmod). Also the device was picky when insalling the card, it would only say blank sd card or cannot read filesystem. I had to install the card in the dock, format it from cwm recovery, (vfat if I remember correct, ext2 and ntfs had issues, avoided ext3 and ext4 cause journaling will cause more wear and tear).
The sd card is a scandisk ultra sdhc uhs-1 8 gigs. From my research that is the fastest this tab can handle. I also use optimising programs like greenify (epic save everything app), pimp my rom (almost every tweak applied), and some pretty efficient tweaks in the settings as well. I also have HALO))) installed and working (epic multiwindow app that works with native programs and almost any rom).
The resuts:
I tested it many ways, I rebooted to see use (none was used because swap starts after boot), I opened apps normally (browsers and things), and it showed 9kb's was used. I then put it to the tests, I open four windows in halo, these were youtube, moonreader pro with a pdf ebook, lecturenotes (awsome note and handwriting app with tons of functions), and Supernote pro (not the best note app). Constantly switched between the apps and messed with settings with them open. The max of swap used was around 10mb(keeping in mind that when I switch windows the app(s) I leave get paused making it hard to tell actual usage because I had to swith the terminal and type "free". I then ran antutu bechmark and gpubench (my tab stills score pretty well) and got a little higher swap usage but not much.
As for the feel of it, it seemed to help when opening many windows in halo, this is the primary reason for my doing this. As for other more normal uses I really didnt see too much of a difference, I did test games however and they did seem a little better (could be placebo) but I am not really sure why they would except android cached other apps to free memory. Reopening apps seemed faster. Also because of apps like greenify my memory usage is decreased so I am sure typically swap would have seen more use.
The conclusion is that at this point I really didn't notice much of a boost for any normal use, but I will definately keep the swap space on due to the boost when using halo and not to mention that I will be updating to android 4.4 soon and it might need more memory. Swap at this point seems more like a pre emptive strike, but it does help with multitasking.
about swap
://androidforums.com/boost-mobile-warp-all-things-root/610449-ram-swapping-without-swapper2.html I actually followed a guide on android central and redid the swap file to 1 gig to swap instead of using a program, this worked better. (add http in front), when i disabled swap it was noticeable that there was a boost. then reenabled it this method.
Related
Im trying out a theory. I running JAC Hero 2.3 and wanna try running the swapfile on the /data partition. I moved app_s over to /system/sd and used swapper app to create the swapfile but android doesnt seem to use it. when i run free It says Total/used/free are all 0 but the swap file is 34 meg. I tried putting it in a sub folder and chown root.root on the folder before setting up and still no luck. Anyone have any ideas why it wont work on /data or how to get it to work on /data?
Once you run swapper go into the setting and change the location of your swap file from /sdcard/swapfile.swp to /system/sd/swap.swp ( see sxfx post[url]
you don't want to do that. Swapping involves a lot of writing and erasing, it'll wear out your internal chip and you'll start experiencing reduced capacity, write cycles for nand are even less than for flash memory!
jubeh said:
you don't want to do that. Swapping involves a lot of writing and erasing, it'll wear out your internal chip and you'll start experiencing reduced capacity, write cycles for nand are even less than for flash memory!
Click to expand...
Click to collapse
not to mention, swapon as implemented (on every build i've tried) doesn't work on a swapfile stored on a yaffs2 partition
jubeh said:
you don't want to do that. Swapping involves a lot of writing and erasing, it'll wear out your internal chip and you'll start experiencing reduced capacity, write cycles for nand are even less than for flash memory!
Click to expand...
Click to collapse
Actually /sdcard/ is your fat32 portion of your sd card, /system/sd/ is the ext2/3 of your sd card.
Also I have done a bunch of research on this write/read fiasco just because of android.
And even if you set a swap file to your SD sure it will shorten your life of the card but it will still last you at least 2 years.
I have been using USB devices on linux as swap locations forever now and I still have thumb drives that have been used and abused for months and months as a swap place and they are still pulling strong.
As for the internal chip, Im not sure what you mean by that?
Even if you could put swap on the internal flash, its not going to be faster.
Putting swap on the internal flash will make things slower as the internal flash is about 3 to 5 times slower than a class 6 sdcard.
you're comparing using a flash drive for swap in a full blown computer that probably has around 1-4gb of ram, the swap file is hardly ever touched, unless you're running a lot of applications at a time. Dream has only 90 mb available to dalvik, and rosie is a big fat... lady... plus linux/dalvik manage memory in a different way, so files are often dropped to swap and they dont stay there for long (maybe in a 256 swap, but not in a 32 mb one).
the OP also is talking about moving his swap to his internal storage (chip, nand, whatever), as he thinks it's having no effect working from the sd card. Personally, i think that both a2sd and swapper are flawed. They're overcompensating for an os that was not meant to run on that device, and the real work should be in porting (as in developing, not just file-swapping as most "devs" do here) a launcher app that we can feel comfortable with running on a stock android system with stock (or slightly improved) libraries and that we can call comparable to rosie. Just look at ahome or dxtop or openhome, they're good, solid, great looking home replacements that work as well or better than rosie, but they run out of the stock libraries. I wonder why nobody has made a free, open source home replacement app yet
jubeh said:
you're comparing using a flash drive for swap in a full blown computer that probably has around 1-4gb of ram, the swap file is hardly ever touched, unless you're running a lot of applications at a time. Dream has only 90 mb available to dalvik, and rosie is a big fat... lady... plus linux/dalvik manage memory in a different way, so files are often dropped to swap and they dont stay there for long (maybe in a 256 swap, but not in a 32 mb one).
the OP also is talking about moving his swap to his internal storage (chip, nand, whatever), as he thinks it's having no effect working from the sd card. Personally, i think that both a2sd and swapper are flawed. They're overcompensating for an os that was not meant to run on that device, and the real work should be in porting (as in developing, not just file-swapping as most "devs" do here) a launcher app that we can feel comfortable with running on a stock android system with stock (or slightly improved) libraries and that we can call comparable to rosie. Just look at ahome or dxtop or openhome, they're good, solid, great looking home replacements that work as well or better than rosie, but they run out of the stock libraries. I wonder why nobody has made a free, open source home replacement app yet
Click to expand...
Click to collapse
You make a very good point about computer having 1-4gigs of ram and not needing a swap file.
Honestly I almost never run a swap file on a computer that has more then 1gig of ram.
Plus90% of the time when I do run a swap file is when Im running a live distro of linux of a cd, but also 90% of the time I run the distro from the flash drive instead of cd cause its much faster.
So now imagine how many reads/writes I abuse that flash drive with by running a full OS on it.
Also I don't understand how a2sd or swapper is flawed? Just because they do their job? I mean it's not really our fault that they made the G1 with a little less memory spaces then we would like it to have.
But that's exactly why we have tools like swapper and a2sd. Plus no one is really forced to run these roms on the G1 phone and those of us that do realize that we have to take extra steps in creating tools to help it.
And that's not only true for the G1 but anywhere in the computer world these days.
dwang said:
Even if you could put swap on the internal flash, its not going to be faster.
Putting swap on the internal flash will make things slower as the internal flash is about 3 to 5 times slower than a class 6 sdcard.
Click to expand...
Click to collapse
I'd like to spread swap over the sd and internal storage if possible -- should make paging a lot less evident if priorities are set up properly.
dwang said:
Even if you could put swap on the internal flash, its not going to be faster.
Putting swap on the internal flash will make things slower as the internal flash is about 3 to 5 times slower than a class 6 sdcard.
Click to expand...
Click to collapse
internal memory is faster. class 6 guarantees 6mbs read/write times but doesnt mean the bus can support those times. if you run a test copying something to /system/sd and to /data you will see /data is faster. as for those saying it will degrade the internal memory, that is not the case being the flash memory inside is designed to have much much much more read/write cycles. Think about it in a stock G1, this is where dalvik-cache is writen to as well as email, sms, user settings, cache for browser and uTube. Do not confuse internal flash memory to sd card flash memory
Are you sure about that? This guy has some test results and it indicates that a class 6 sdcard is much faster than the internal flash.
http://forum.xda-developers.com/showpost.php?p=4059520&postcount=15
MonkySlap said:
internal memory is faster. class 6 guarantees 6mbs read/write times but doesnt mean the bus can support those times. if you run a test copying something to /system/sd and to /data you will see /data is faster. as for those saying it will degrade the internal memory, that is not the case being the flash memory inside is designed to have much much much more read/write cycles. Think about it in a stock G1, this is where dalvik-cache is writen to as well as email, sms, user settings, cache for browser and uTube. Do not confuse internal flash memory to sd card flash memory
Click to expand...
Click to collapse
dwang said:
Are you sure about that? This guy has some test results and it indicates that a class 6 sdcard is much faster than the internal flash.
http://forum.xda-developers.com/showpost.php?p=4059520&postcount=15
Click to expand...
Click to collapse
That's interesting. Going to have to try that test out. I just noticed when xfering stuff to /data it was faster then to /system/sd. If it is then touche my friend.....touche
Can anyone direct me to a guide somewhere?
I'd like to make an ext partition? Or would I? Is Swapper 2 just as fast? Tradoffs? Anyone run into their sd card wearing out yet?
bueler?
The message you have entered is too short. Please lengthen your message to at least 10 characters.
The consensus seem to be "do not use" except as 'last resort', and only needed on phones with 256MB or less of mem.
I wrote this, and I am waiting for a technical review from some experts in this field.
http://forum.xda-developers.com/showthread.php?t=897823
kschang said:
The consensus seem to be "do not use" except as 'last resort', and only needed on phones with 256MB or less of mem.
I wrote this, and I am waiting for a technical review from some experts in this field.
http://forum.xda-developers.com/showthread.php?t=897823
Click to expand...
Click to collapse
I have 256MB ram
At the moment, Compcache is good enough, but I can't help but wonder how much better it could be with swap instead of Compcache.
edit: "For example, If you have a 256MB system (shows as 262MB due to 1024 vs. 1000 KB size difference) and have 130MB of apps and data/cache loaded, then that leaves about 130MB for the system to actually RUN programs. That sounds like a lot, but in reality that is not enough, since the system itself takes 50-80MB, and services will take up another 30-50MB, leaving almost nothing. "
quick review, you don't appear to be differentiating between RAM and Flash? Having more apps installed shouldn't increase RAM usage at all. Unless I gravely misunderstand the Android OS, if I install a new program, it resides in the system flash, not the RAM, until I run it, at which point it gets loaded to RAM. When the system needs memory and no swap or Compcache is in use, it writes the state of the application to the flash and removes it from RAM.
What the swap does is similar to what compcache does-- compresses apps that are currently in RAM, and moves them to the swap space. In the case of Compcache, this is in the RAM. But since you're compressing it, background apps don't take nearly as much RAM, and you get an app switching speedboost because the processor can uncompress the compcache'd program, "move" it to RAM, compress the currently running program in RAM, and "move" it to the compcache. Forgive me if you already said this, I can't read the entire thing at the moment.
As for swap, I'm not sure if the processor compresses before going to the hard swap file, I don't think that it does-- when android starts getting low on RAM, it moves what was in RAM, to the swap on the SD-card. Since it does this when the system is low on RAM, and not when the system runs out of RAM, you never notice it. Reading the app back from the SD card happens almost instantaneously, because the sd cards can be read from at a speed of at least 20MB/s, maybe more. When you're restoring an app to RAM, 20MB/s is plenty.
edit2: I'm sorry but this guide is too vague to be anything more than moderately informative. Comments like:
-"CompCache, or "compressed cache", is handled by the Linux kernel. It takes a portion of your memory, and use it as a cache space, but compressed. By using on-the-fly compression it is able to make your memory appear to be a bit larger than it actually is. However, the result is slower performance.
This is usually NOT tweakble without mod ROM such as Cyanogen Mod. The kernel also must support this feature, and not all do. This also slows your phone. "
-"...swap space by either creating a swap file or a swap partition. This adds a lot of read/write action to your SD card and may substantially decrease its usable life."
-"This really slows your phone."
People wouldn't be doing these things for no reason. Compcache does not "make your memory appear a bit larger", when it at least doubles the amount of usable RAM-- when you allocate 60MB, if you average 75% compression (I usually see between 65% and 80%), do you know how much RAM this effectively nets you? Over at least 60MB extra, usually about 80! So my phone goes from having 256MB ram to having 340 effectively. Having your processor overclocked minimizes any slowdown from the compression/decompression; I haven't noticed any slowdown, and having the "extra" RAM definitely has made my phone more able to multitask.
You basically discourage users from doing ANYTHING like swapping, compcaching, etc to their phone, saying it "slows it down" and "can substantially decrease your SD Card's life". My experience has been otherwise regarding slowing it down, and regarding the SD card, the only part that would actually go bad is the swap partition. If you put that at the end of the drive, when it goes bad, you'll know, and you can just move the partition back 300MB and put your 300MB swap there. We haven't heard of any users' cards going bad from this yet. Also, if you have a class 6+ SD Card, they implement wear leveling on the card, so you don't need to worry about wearing out any individual bits.
Sorry, I'm just not digging it.
rancur3p1c said:
I have 256MB ram
Click to expand...
Click to collapse
Me too, me too...
At the moment, Compcache is good enough, but I can't help but wonder how much better it could be with swap instead of Compcache.
Click to expand...
Click to collapse
So try it. With CM612, I have CompCache AND Swap (through Swapper2 / 128 MB) turned on. It slows down every once in a while but my programs don't crash any more.
edit: "For example, If you have a 256MB system (shows as 262MB due to 1024 vs. 1000 KB size difference) and have 130MB of apps and data/cache loaded, then that leaves about 130MB for the system to actually RUN programs. That sounds like a lot, but in reality that is not enough, since the system itself takes 50-80MB, and services will take up another 30-50MB, leaving almost nothing. "
quick review, you don't appear to be differentiating between RAM and Flash? Having more apps installed shouldn't increase RAM usage at all. Unless I gravely misunderstand the Android OS, if I install a new program, it resides in the system flash, not the RAM, until I run it, at which point it gets loaded to RAM. When the system needs memory and no swap or Compcache is in use, it writes the state of the application to the flash and removes it from RAM.
Click to expand...
Click to collapse
At first I thought the same way you did, until I started looking in "diskusage".
According to diskusage, there is no separate RAM. 256MB is 256MB. App storage is where everything goes, and what's left is used to load services and such. The numbers I added up matches. I have 256 MB phone. 100 is for apps, which leaves about 150-160. System itself takes 50-80 (acore, gapps, phone, system...) then add a few services and you're down to 30-40 MB free to actually run the programs. The numbers seem to match up to what's shown at the bottom of "Manage Services".
I know it's weird, but perusal of Android developers kit doesn't contradict this understanding.
What the swap does is similar to what compcache does-- compresses apps that are currently in RAM, and moves them to the swap space. In the case of Compcache, this is in the RAM. But since you're compressing it, background apps don't take nearly as much RAM, and you get an app switching speedboost because the processor can uncompress the compcache'd program, "move" it to RAM, compress the currently running program in RAM, and "move" it to the compcache. Forgive me if you already said this, I can't read the entire thing at the moment.
As for swap, I'm not sure if the processor compresses before going to the hard swap file, I don't think that it does-- when android starts getting low on RAM, it moves what was in RAM, to the swap on the SD-card. Since it does this when the system is low on RAM, and not when the system runs out of RAM, you never notice it. Reading the app back from the SD card happens almost instantaneously, because the sd cards can be read from at a speed of at least 20MB/s, maybe more. When you're restoring an app to RAM, 20MB/s is plenty.
edit2: I'm sorry but this guide is too vague to be anything more than moderately informative. Comments like:
-"CompCache, or "compressed cache", is handled by the Linux kernel. It takes a portion of your memory, and use it as a cache space, but compressed. By using on-the-fly compression it is able to make your memory appear to be a bit larger than it actually is. However, the result is slower performance.
This is usually NOT tweakble without mod ROM such as Cyanogen Mod. The kernel also must support this feature, and not all do. This also slows your phone. "
-"...swap space by either creating a swap file or a swap partition. This adds a lot of read/write action to your SD card and may substantially decrease its usable life."
-"This really slows your phone."
People wouldn't be doing these things for no reason. Compcache does not "make your memory appear a bit larger", when it at least doubles the amount of usable RAM-- when you allocate 60MB, if you average 75% compression (I usually see between 65% and 80%), do you know how much RAM this effectively nets you? Over at least 60MB extra, usually about 80! So my phone goes from having 256MB ram to having 340 effectively. Having your processor overclocked minimizes any slowdown from the compression/decompression; I haven't noticed any slowdown, and having the "extra" RAM definitely has made my phone more able to multitask.
Click to expand...
Click to collapse
It also seriously depends on your SD card. I've read reports on Phandroid that said class 6 or 8 microSD cards would provide almost lag-free swaps, but that's on a G1 (which is already a slow phone).
You basically discourage users from doing ANYTHING like swapping, compcaching, etc to their phone, saying it "slows it down" and "can substantially decrease your SD Card's life". My experience has been otherwise regarding slowing it down, and regarding the SD card, the only part that would actually go bad is the swap partition. If you put that at the end of the drive, when it goes bad, you'll know, and you can just move the partition back 300MB and put your 300MB swap there. We haven't heard of any users' cards going bad from this yet. Also, if you have a class 6+ SD Card, they implement wear leveling on the card, so you don't need to worry about wearing out any individual bits.
Sorry, I'm just not digging it.
Click to expand...
Click to collapse
Constantly reading and writing the file will cause that area to get much heavier use and eventually cause it to fail the bootup "checking SD card". The only question is how much life is taken away.
I am running my Droid on 24% CompCache AND 128MB Swap right now. Occasional lag but otherwise runs quite well. It's also overclocked to 1.2 GHz with P3Droid's kernel. So I do practice somewhat of what I preach...
so if I have 512MB of ROM, and 256MB of RAM, and I fill up my ROM with programs, how much RAM do I have?
I don't follow how what you said can be.
SD Card writes-- SanDisk guarantees theirs for 100K writes to any given sector...that's good enough for the swap to not be a problem in the near future IMHO.
let's put it this way...
Here's the specs of Moto Droid from Motorola itself (http://developer.motorola.com/products/droid/)
RAM 256 MB
FLASH ROM 512 MB
USER STORAGE AVAILABLE (MAX) 256 MB
So the REST of the ROM clearly is to hold the Android OS itself. The actual programs you can load for running? 256MB. That's app storage.
I've always wondered if there's a way to read the actual ROM contents and enumerate that... But that's for another topic.
Found this useful post: boot process of Android OS
http://www.androidenea.com/2009/06/android-boot-process-from-power-on.html
Furthermore, I noticed that the "built-in" apps (i.e. bloatware) are actually just stuff left in the "system" dir which can only be accessed with root permission. So they are NOT store in "ROM" per se, but more like "part of boot rom".
I have to find explanation on how an app is loaded, but that helps...
Aha, so that's the term they used... Application Lifecycle.
http://www.youtube.com/watch?v=ITfRuRkf2TM
Okay, I take back what I said. Apps are loaded into RAM, but HOW things are allocated wasn't that clear.
From what I understand, apps, when they are killed by system, some exit gracefully by writing their instance "state" (data and cache) to app storage. Some just exits.
Browser will write the URL, for example. When the browser is "resumed", the process is loaded, then the instance loads back the URL and it's as if nothing happened.
I'll have to revise the paper, AND I haven't figured out what to say about swap and compcache yet.
Made some corrections.
On 256MB machine, 30MB is used by deep system buffers (not part of OS), another 32 for OS cache, so about 190 or so is available the OS itself to load apps and services, and just the default gapps, system, phone, and so on is about 60MB. So a fresh clean phone should ahve no more than 120-130 MB free. If you load a couple apps with autostart services, it'll quickly drop below 50MB.
http://stackoverflow.com/questions/2298208/how-to-discover-memory-usage-of-my-application-in-android
Another piece of the puzzle... The numbers at the bottom of "Manage Services" is as explained below:
(quoting from http://android-developers.blogspot.com/2010/02/service-api-changes-starting-with.html )
"Finally, along the bottom of the screen are some obscure numbers. If you know how to interpret them, this gives you a lot of information on the memory status of your device:
* Avail: 38MB+114MB in 25 says that the device has 38MB of completely free (or likely used for unrequired caches) memory, and has another 114MB of available memory in 25 background processes it can kill at any time.
* Other: 32MB in 3 says that the device has 32MB of unavailable memory in 3 unkillable processes (that is, processes that are currently considered to be foreground and must be kept running)"
The order is reversed in Android OS 2.2. Mine says
Other: 75MB in 5 Avail: 18MB + 20 MB in 3
Which should mean 75MB in 5 unterminable tasks, 18 MB free (or can be freed easily), plus another 20 MB used by 3 processes that can be killed to free up.
ProCrank says...
39911K System_server
15756K acore
12982K swiftkey
10136K DIY Screensaver (lock screen)
9392K Phone (system)
9093K ATKfroyo
6834K Terminal
3984K JuiceDefender
3785K Screebl
3482K system MMS
3329 SeePU
3244K Bluetooth
3199K SetCPU
1979K Zygote (which is Dalvik init)
1425K Mediaserver
and the rest is native system code well under 1MB in size.
If you add System_server, Phone, Zygote, Acore, and foreground app (terminal and procrank) you get about 75MB. It would be nice if that screen TELLS you which program it considers to be unterminable, but, oh well...
Any one have luck getting ready boost working with the surface mico sd reader. I have a class 10 card that ready boost is working on a Win 8 pro machine via a sd card reader.
mattalter said:
Any one have luck getting ready boost working with the surface mico sd reader. I have a class 10 card that ready boost is working on a Win 8 pro machine via a sd card reader.
Click to expand...
Click to collapse
Isn't readyboost mainly for booting up the computer. With the Surface being mainly on from standby mode, which is almost instant, not sure of the benefit. I have only cold booted my Surface a few times in the 2 weeks I have had it and that was mainly due to an update that required it.
Readyboost
I found this. Looks like RB is disabled when a SSD is present.
http://technet.microsoft.com/en-us/magazine/ff356869.aspx
ReadyBoost only caches disk drive activity, it's pointless with SSDs. You could write to the SSD faster than you could write to the SD card.
@netham45 hs it right. If you look at the error when trying to use RB on a device with a SSD, it tells you that the system drive is so fast that RB wouldn't help anything. The point of RB is to basically extend the SuperFetch cache, which lets you load programs faster by pre-loading their files into RAM based on what times of day you typically run them. On machines with a slow HD, this can be a huge speed boost (launching EVE Online, which has a footprint of over a gig, went from ~20 second on my XP install to ~8 when I installed Vista, even though the machine had less than 2GB of RAM). However, its effectiveness is limited on low-RAM systems, because Superfetch has to have some free RAM to use for the cache, and if all the RAM is in use then it can't help you. Enter ReadyBoost; reading Flash storage is a lot faster than reading most hard disks, so even though it's not nearly as fast as RAM it still hugely speeds up loading large amounts of data, especially across many files (almost zero access latency).
On a system with an SSD, Superfetch is still useful (the SSD is nowhere close to the speed of RAM), but Readyboost really isn't; a typical SD card or UMS device has a read speed somewhere in the range of 100-400 Mbps (USB2 caps out at 480Mbps, but many external devices can't come close to that). On the other hand, a SATA2 connection caps out at 3Gbps (more than 6x as fast) and some SSDs can already saturate those, which is why SATA3 exists (6Gbps). ReadyBoost isn't going to do a darn thing for the Surface.
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.
Hello everyone,
I need some help with expanding RAM of an old android tablet of mine, more specifically, an Genesis GT-7204, using an SD card.
I rooted the tablet already and granted the app RAM Expander from Roehsoft root permissions, but when i try to use the app i get the following message: "This path is not available for swap!" Image below:
https://imgur.com/4MZ2l
The path i used was mnt/local:
https://imgur.com/6zUH7
Thanks in advance!
The images might be blocked, in any case i will post them here.
Personally have experienced that Virtual RAM ( aka SWAP RAM ) can only get created on a device's internal storage memory ( aka /sdcard ).
Hint: As path manually enter /data .
BTW:
Android since ever comes with virtual RAM ( SWAP RAM) feature. The internal storage memory used herefore is the /cache partition.
Also take note that an Android apps' memory usage by design is limited to some MBs. Even if you increase in Android's system file called build.prop the related amount, it's not sure that this is taken into account: an app's develeoper allows this or not.
And keep in mind that apps that did not fit in the RAM before without swap do not suddenly fit in the RAM.
Don't expect wonders using Roehsoft's RAM Expander. Probably you may not notice any gain in device's performance.
So i can only use my internal storage to add RAM? And not the SD card?
And to do this i have to manually set a path, but i am new at this, but i have to use /data or there is something else?
And in my case it is worth it, because this freaking tablet has only 500 MB of RAM!!!!!
jwoegerbauer said:
Personally have experienced that Virtual RAM ( aka SWAP RAM ) can only get created on a device's internal storage memory ( aka /sdcard ).
Hint: As path manually enter /data .
BTW:
Android since ever comes with virtual RAM ( SWAP RAM) feature. The internal storage memory used herefore is the /cache partition.
Also take note that an Android apps' memory usage by design is limited to some MBs. Even if you increase in Android's system file called build.prop the related amount, it's not sure that this is taken into account: an app's develeoper allows this or not.
And keep in mind that apps that did not fit in the RAM before without swap do not suddenly fit in the RAM.
Don't expect wonders using Roehsoft's RAM Expander. Probably you may not notice any gain in device's performance.
Click to expand...
Click to collapse
So i can only use my internal storage to add RAM? And not the SD card?
And to do this i have to manually set a path, but i am new at this, but i have to use /data or there is something else?
And in my case it is worth it, because this freaking tablet has only 500 MB of RAM!!!!!
pprg1101 said:
So i can only use my internal storage to add RAM? And not the SD card?
And to do this i have to manually set a path, but i am new at this, but i have to use /data or there is something else?
And in my case it is worth it, because this freaking tablet has only 500 MB of RAM!!!!!
Click to expand...
Click to collapse
Honestly I never used Roehesoft's RAM Expander on a real Android device and I'll never will use it: In my eyes it's crap. And, you'll find no serious confirmations in the WEB that it works as claimed.
Android for good reason doesn't come with SWAP feature. Android's Memory Manager frees RAM if necessary.
It's on you to play around with Roehesoft's RAM Expander. Good luck.
My last 2 cents here:
SWAP is a place on the internal storage memory (usually a dedicated partition) that is used to store programs or data that can't fit in memory, like when a program grows more than the available RAM (BTW: In the world of Windows this space is called Swapfile.sys ). SWAP is way slower than RAM, so when you create / enable SWAP the phone gets slower, but at least the program can work.
All the stuff that can't or shouldn't stay in your RAM is written out to SWAP and read back in when needed. This means that the SWAP medium needs to be fast and resilient to lots of writes.
IMHO using an external SD card as SWAP fails on both counts. It is slower at reading/writing than a phone's internal drive, and each of its constituent sectors can only be written to a limited number of times before they wear out and can no longer reliably store data.
SC pl