Question RAM Plus Feature in S21Ultra - Samsung Galaxy S21 Ultra

I have updated to latest ONeUI 4 Beta 2 and RAM Plus feature is active. However, I can see only 12 GB memory which is inbuilt RAM. Has anyone checked this feature and getting !2+4GB ie 16 GB memory

It's zRAM, it doesn't magically add RAM. You still have 12GB.

For starters, RAM Plus is a new feature that gives your smartphone a virtual RAM expansion with an extra 4GB of memory by utilizing some of its storage space. It was initially unveiled alongside the Galaxy A52s, so the feature was thought to be designed for mid-range phones that could benefit the most from this capability.
Click to expand...
Click to collapse
Uses storage space to create virtual ram like the old page file in Windows.
The feature may be more useful in mid-range and low-end phones, such as Samsung's Galaxy M and A series. However, it may not offer much value for smartphones with 16GB of RAM, such as the Galaxy S21 Ultra.
Click to expand...
Click to collapse
Since it is hard to push the S21 Ultra to use its full 12GB/16GB of RAM I cannot see it making much of a difference.
Source: https://www.androidcentral.com/samsung-galaxy-s21-ram-plus-update

lywyn said:
Uses storage space to create virtual ram like the old page file in Windows.
Click to expand...
Click to collapse
This is not accurate, it is not using storage.

skymera said:
This is not accurate, it is not using storage.
Click to expand...
Click to collapse
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
It uses storage memory to create a 4GB of virtual RAM. You cannot create more RAM than you have to you page it out to storage memory. Windows NT had a page file for the exact same thing. It addres memory addresses that are mapped to the storage of teh device.
Where else can it get 4GB from?

lywyn said:
View attachment 5427591
View attachment 5427595
View attachment 5427607
View attachment 5427609
View attachment 5427611
It uses storage memory to create a 4GB of virtual RAM. You cannot create more RAM than you have to you page it out to storage memory. Windows NT had a page file for the exact same thing. It addres memory addresses that are mapped to the storage of teh device.
Where else can it get 4GB from?
Click to expand...
Click to collapse
Where? zRAM has existed for years.
If Samsung really are using a swap file of sorts then that is a dumbass decision.

zRAM would add more power consumption by doing all the compression on the fly and drain the battery faster.

Ram plus disable method

I stumbled upon this thread since I was wondering what RAM plus should be. After rooting my S21 Ultra I could use Franco kernel manager to check zRAM and big surprise: zRAM is enabled and exactly 4 GB.
I also checked the available swap with
Code:
free -m
but it only shows zRAM. If I disable zRAM the command it shows 0 meaning there is no swap of any kind. Either Samsung uses special non-standard Linux stuff or more likely: it is zRAM.
That means 4 GB out of my 12 GB RAM are being compressed and to be honest: I don't see any point in doing that with 12 GB of RAM. Apparently Android uses only 10,3 GB (1,7 GB is reserved. I think the reserved memory could be a Samsung thing or allocated to the VRAM of the graphic processor as Android itself only sees 10,3 GB).
The information about "using the internal storage" to expand the RAM (= swap) seems to be misleading. There is only zRAM which expands the RAM by compressing a part of it. Adding more CPU usage but definitely not affecting the internal storage.
By using
Code:
swapoff /dev/zram0
I've now disabled zRAM upon booting and I'll see how it goes. The 4 GB Samsung shows seem to be hard-coded. Even with zRAM disabled it still says that RAM plus exists. Of course all of this requires rooting.
If you want to enable zRAM again either reboot or use
Code:
swapon /dev/zram0
I've spent about an hour of research about this. Maybe it helps someone

RAM Plus should be able to be disabled on OneUI 4.1
On 16Gb/512Gb versions, it makes even less sense...

Guys wake up, your phones have 12Gb or even 16GB RAM... YOU DO NOT NEED MORE... I know it is tempting to make your phone have 4gb more but it is not necessary for 1, and for 2, it will eventually backfire at you.
What do I mean by backfire?
A long time ago, an app was invented by some Russians that would utilize the phones SD card as extra ram. It worked and was a superb addition to a phone with 1GB ram or less. However after using it for a few short months, it would fry the SD card either entirely, or make it READ ONLY. The latter being better as you could at least transfer your data out of the SD card. Then manufacturers started making phones with better ram management and also MORE ram... So eventually this type of software was obsolete because of the damage it would cause to your internal memory.
This RAM PLUS function is a knife with a blade on both sides. It is FREE ram for YOU, and a faster purchase of a new phone for Samsung. If the function does not fry your internal memory, it will surely decrease its speed over time. How much time, is a mystery. The question is, do you want to find out?

RedWave31 said:
RAM Plus should be able to be disabled on OneUI 4.1
On 16Gb/512Gb versions, it makes even less sense...
Click to expand...
Click to collapse
I agree. Its use is for low memory devices that would have multitasking issues otherwise. But with 12 or 16 GB of RAM it does not make sense except you have serious issues with apps getting killed due to low RAM
babyboy3265 said:
Guys wake up, your phones have 12Gb or even 16GB RAM... YOU DO NOT NEED MORE... I know it is tempting to make your phone have 4gb more but it is not necessary for 1, and for 2, it will eventually backfire at you.
What do I mean by backfire?
A long time ago, an app was invented by some Russians that would utilize the phones SD card as extra ram. It worked and was a superb addition to a phone with 1GB ram or less. However after using it for a few short months, it would fry the SD card either entirely, or make it READ ONLY. The latter being better as you could at least transfer your data out of the SD card. Then manufacturers started making phones with better ram management and also MORE ram... So eventually this type of software was obsolete because of the damage it would cause to your internal memory.
This RAM PLUS function is a knife with a blade on both sides. It is FREE ram for YOU, and a faster purchase of a new phone for Samsung. If the function does not fry your internal memory, it will surely decrease its speed over time. How much time, is a mystery. The question is, do you want to find out?
Click to expand...
Click to collapse
I totally agree, but I have to add two things: 4 GB of zRAM ≠ 4 GB "more RAM". It means that 4 GB are being compressed which could result in something like 5.2 GB of RAM instead of 4. Just like if you had 4 GB of RAM and compress it, you would have something like 2.8 GB instead. So zRAM is not adding something but compressing a small portion.
The second thing is that Samsung utilises zRAM but not (z)swap. Meaning that while the RAM is being compressed, there is no swap file on the internal storage despite Samsung listing that in its FAQ. zRAM will not hurt your internal storage, it will have no direct negative effects on longevity of any component. The processor will only compress data that is already in RAM and compress it there. There is no offloading to the internal storage. The only disadvantage is more CPU usage and time to load/store something due to the compression.
The only things that would see negative impacts with zRAM is the CPU temperature (but it's so low, it's negligible) and battery consumption, therefore battery longevity in the longterm. But both are very minor

Macusercom said:
I agree. Its use is for low memory devices that would have multitasking issues otherwise. But with 12 or 16 GB of RAM it does not make sense except you have serious issues with apps getting killed due to low RAM
I totally agree, but I have to add two things: 4 GB of zRAM ≠ 4 GB "more RAM". It means that 4 GB are being compressed which could result in something like 5.2 GB of RAM instead of 4. Just like if you had 4 GB of RAM and compress it, you would have something like 2.8 GB instead. So zRAM is not adding something but compressing a small portion.
The second thing is that Samsung utilises zRAM but not (z)swap. Meaning that while the RAM is being compressed, there is no swap file on the internal storage despite Samsung listing that in its FAQ. zRAM will not hurt your internal storage, it will have no direct negative effects on longevity of any component. The processor will only compress data that is already in RAM and compress it there. There is no offloading to the internal storage. The only disadvantage is more CPU usage and time to load/store something due to the compression.
The only things that would see negative impacts with zRAM is the CPU temperature (but it's so low, it's negligible) and battery consumption, therefore battery longevity in the longterm. But both are very minor
Click to expand...
Click to collapse
That was a nice in depth explanation. Thank you!

Related

Swapper [0.1.3] - tool for creating and using swap

Simple application for "extending memory". Helps when you need some memory for non active applications (like music player + browser + maps + etc...).
Idea taken from http://forum.xda-developers.com/showthread.php?t=482228
Requires root and SD/SDHC card.
Warning: SD card will be used as swap space. It can (and will) shorten SD card lifespan.
Application creates/rewrites swapfile.swp file on sdcard and mounts it as swap. It can use swap partition too. It can change swappiness behaviour ( http://forum.xda-developers.com/showpost.php?p=3331080&postcount=33 )
Phone switches between tasks slower, but can run more programs in parallel.
Changes remains until reboot. Disable swap to eject/mount card.
It's my first application for Android. It goes as is, without any warranty. Use at your own risk.
Sorry for my English.
If You have any problems, please check http://code.google.com/p/a-swapper/wiki/Settings , it could contain some answers. If not, please feel free to fill bug.
Requested features
Configurable swap size
Configurable location of swap file (fixed location reset bug)
Autostart (some reports says it doesn't work)
Threaded swap creation
Widget
Memory buffer flusher (from pagubg)
Swap partition support
Permission fix
= finished = finished, needs testing = not finished
History
0.1.3: Swap partition support. Debug logging on problems.
0.1.2: a-c Test builds
0.1.1: 1.5 build. Autostart, interface changed.
0.0.6: Stable build. Works with version 1.5
0.0.5: Added some features (path to swap file, progress indicator). Tweaked visual apperance.
0.0.3: Added swappiness settings (Thank you for pointing it out, MoridinBG), some information output.
0.0.2: First release
Moved to code.google.com.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
http://code.google.com/p/a-swapper/
Consider changing the default swappiness behaviour, as described in my post at page 3 of the thread. With the default value, 60, the phone uses the impossibly slow swap too much and after some use the entire system becames unusable.
Lowering it to a lower value, like 20 or 10 makes it swap rarely, while still using the swap to not force applications to unload and the system is usable, even after long time use.
Does this really work? I tried it and set the swappiness to 10 and 20 and then went to the browser and loaded a bunch of "heavy" websites. After that I switched to the home screen and there was still a significant lag.
its working yes, program is probably good but swaping in embedded devices with so few memory like this is a terrible idea, keep testing anyway.
what maybe is worth the effort is looking at the kernel code and and recompile it removing first netfilter and some other unused things (or compile it as modules) to gain 1Mb or two, and gain significant speed removing the debug features that normal users doesnt want/need. there isnt much which can be done until someone figure out how to recover the other missing 128 mb who is said are eaten by graphic framebuffers.. i dont believe that.
Yes, there are some lags, but it's the best "user friendly" way now available not to close nessesary background applications as far as I know (correct me, if I'm wrong).
Working for me (I wrote application for easy turning it on and off - using swap only when nessesary, not all the time).
ex87 said:
Simple application for "extending memory". Helps when you need some memory for non active applications (like music player + browser + maps + etc...).
Idea taken from http://forum.xda-developers.com/showthread.php?t=482228
Requires root and SD/SDHC card.
Click to expand...
Click to collapse
First off, nice work with my initial idea
Questions however: Can you make the swap space size configurable? Also, I see that you went with my original hunch of /sdcard/ . This poses some challanges: it is required that swap is turned off before you can mount the card as a flash drive in your PC. There are also other issues I will probably be able to think of when I'm not so tired.
A configurable option of either /system/sd/ (for LucidREM's JFvMod build) or /sdcard (for those who havent moved the Apps/Data/Caches to SD) would be ideal!
Thanks for making a great quick gui! I have no idea where to start with java.
If any of Swapper users use LucidREM's JFvMod build - please test swapspace placing to /system/sd/ . Thank you!
Question
Yep, I'll be that first guy to ask the question. I will accept the consequences. Where can yo direct me to better understand the settings/configuration options available? I would like to understand this before I make changes. Also as a starter if you could recommend an appropriate config for an 8gb class 6 sd card, I would appreciate it.
Thanks to all!
Just to remind you. Set the Swappiness to 10 before or immediately after creating swap or you would experience incredible slowness in a couple of minutes.
Settings:
Swap size = size of file for swapping.Here info for reading http://en.wikipedia.org/wiki/Swap_space
Location = path where to place swap file (Locations button contains predefined paths, one is /sdcard/swapfile.swp, other is /system/sd/swapfile.swp - for those, who divided their sd cards for application sorage).
In program you have swappiness option - range 0-100 - how much you would like to swap. My tests showed that best performance/usability (for my sd+phone) is 32 MB swap and swappiness = 10. Your preferences can differ.
Changes are saved till system restart. After restart you should reenable swap and reset swappiness. Configuration about swap size and location is saved in program. Before configuring swap path please disable swap.
In default place swap is blocking mounting procedure of phone to pc. If you want to mount it, you should disable swap.
About sd configuration - here is one link with instructions. I haven't done it myself yet because of slow sdhc ("quick" sd card is only 1 GB) http://forum.xda-developers.com/showthread.php?t=480582
thanks
Thanks for the info. I apreciate not only the answers but a source to learn from. Rock on.
It makes the camera usable! Thanks!
I've been trying every convievable combination of swap size, location and swap levels.
I started with 32Mb and 15 which proved to be unstable then 10. So then 16Mb w/ swap @ 15 and 16Mb/10 which still provided to be unstable.
All the above combination tested on both /sdcard and /system/sd.
Is a class 4 just to slow for this to work? I'd imagine it wouldn't be but I cannot get this to run stable period.
joshtheitguy said:
I've been trying every convievable combination of swap size, location and swap levels.
I started with 32Mb and 15 which proved to be unstable then 10. So then 16Mb w/ swap @ 15 and 16Mb/10 which still provided to be unstable.
All the above combination tested on both /sdcard and /system/sd.
Is a class 4 just to slow for this to work? I'd imagine it wouldn't be but I cannot get this to run stable period.
Click to expand...
Click to collapse
I think it was discussed somewhere else. You need at least class 6 if you want to get any speed out of anything, especially "apps/caches on sd". Not sure about this swap deal. Sdhcs are considerably cheaper now days, I got my class 6 (8gb) for $18 from MicroCenter.
Good luck
So how do I revert to factory swap settings? I know I can set the swappiness back to 60, but what tells the system where the swapfile is?
when i run the lucidrems location save button, it doesnt start teh program. My cache is moved to the sdcard so i thought i should use this one. When i do it doesnt work.. if i switch back to the defualt it works fine again.. is it ok?
Hello! Sorry for delaying with answers, haven't much time, too much other things to do...
mlevin said:
So how do I revert to factory swap settings? I know I can set the swappiness back to 60, but what tells the system where the swapfile is?
Click to expand...
Click to collapse
After restart all system settings are back to default.
There is no default swap file.
no6969el said:
when i run the lucidrems location save button, it doesnt start teh program. My cache is moved to the sdcard so i thought i should use this one. When i do it doesnt work.. if i switch back to the defualt it works fine again.. is it ok?
Click to expand...
Click to collapse
I haven't tested this, it's theoretically working, but I haven't made mod myself. I'm now waiting for new SDHC class 6 card from ebay, will mod and test it. At the moment I have slow SDHC card. Swapper + mod will be too much for it
If you can, please check (after launching swapper swap on), do you have file named swapfile.swp in /system/sd.
This works great, I'm using 16mb/10swappiness on a class 2 and it works great with no crashes thus far!
is this bad for your SD card? Because it says " * SD card will be used as swap space. It can (and will) shorten SD card lifespan. "
G1-evolve said:
is this bad for your SD card? Because it says " * SD card will be used as swap space. It can (and will) shorten SD card lifespan. "
Click to expand...
Click to collapse
Yes, it is bad for your SD card, you "quoted" that sentence from the OP.
SD cards have a limited write cycle (10.000 or 100.000 times per "sector"), using it for swap in a specific region will shorten your card life.

Using NAND as RAM?

After many tests I think that we really suffer from a lack of RAM. But the internal memory (NAND) should be the same speed as RAM I think. So why we don't use another 128Mb of NAND as additional RAM? A sort of swap part, but used as RAM and not as normal swap....
If someone related to the kernel would answer is it possible or not, it would be good)
DiMiK said:
After many tests I think that we really suffer from a lack of RAM. But the internal memory (NAND) should be the same speed as RAM I think. So why we don't use another 128Mb of NAND as additional RAM? A sort of swap part, but used as RAM and not as normal swap....
If someone related to the kernel would answer is it possible or not, it would be good)
Click to expand...
Click to collapse
Using it as RAM would propably require major changes to the kernel if it is even possible which I doubt it is. Using it as swap would be the possible alternative and I pretty sure that is very possible and would help performance but at a cost.
1. You would either have very little left for system and data or you would have to put system and/or data on the SD-card and that alone may make you lose anything you gain from putting swap on NAND.
2. I actually asked the swap-on nand question myself and well, we can't replace our NAND, at least not easily and swap is I/O intensive and intesive I/O will sooner or later wear out the NAND. So basicly this is not a good alternative unless you want to turn your phone into a paperweight sooner than you had planned.
So what we can do is using compcache and/or swap on SD-card. The easiest thing is to just enable some compcache. It uses RAM as swap and uses compression on the contents so we can hold more things in RAM that we would usually be able to. This means Android can keep more apps in "sleep" allowing for faster switching between apps but it will also decrease the possible amount of available RAM for the active app. I usually turn on compcache with the default setting which is to use 25% of the RAM for compressed swap. It might be placebo but IMHO it feels a it "smoother" to use after that.
Another alternative is to use a swap partition in the sdcard. Just using swap means you do not need to load any compcache kernel modules and there is no compression taking place so it's a good alterantive. However you need know your way around partitioning SD-cards to get this running so it's not as easy as just enabling compcache (assuming the build supports compcache).
For the really advanced you can enable compcache with backing swap. It means it uses a certain amount of compressed swap i RAM and when it runs out of space there it starts putting stuff on the SD-card swap partition. Once again, a bit tricky to setup but may be the best alternative.
Read more about it here: http://wiki.cyanogenmod.com/index.php/Compcache
kallt_kaffe said:
I usually turn on compcache with the default setting which is to use 25% of the RAM for compressed swap. It might be placebo but IMHO it feels a it "smoother" to use after that.
Click to expand...
Click to collapse
It make good effect: more applications can run simultaneously.

Compcache

Just curious, I've been flashing the latest nightlies and in the cyanogenmod settings I see 'use compcache'. I have it unchecked, any difference if I check it. I found a you tube video about 2 phones running with and without compcache. Compcache seemed to load pages better over time, but not initially. Any help would be much appreciated
Copied from this post on another thread..
Very roughly you have a finite amount of memory (RAM). When memory is accessed it is virtual addressing, so an application is given a piece of memory, but this isn't real RAM, the operating system manages this and maps it to where the data really is. Because of this system, the OS can give out more memory than is actually available. It can then store some of this memory on a storage medium and "swap" it with some other programmes memory when one is needed and the other isn't. This is how swap works.
With compcache, instead of storing the dormant memory on a hard disk it is compressed and stored in the RAM itself on a virtual disk. This takes up some RAM, but because it is compressed, more RAM is spare tha n if the data were left in memory as it is. Again this has the effect that more memory space can be handed out than the RAM that is really there.
Because Android manages applications so that when memory runs out it just closes applications running in the background, more applications can reside in the larger virtual memory space than before, making multi-tasking more pleasant and responsive.
I know that nfinitefx45 took compcache out of his latest builds in both the Stock and ZenHeroFX ROMs. I don't know all the technical reasons behind it, but I think it just didn't improve performance enough to be worth leaving it in. Granted those are Sense-based ROMs though which are generally a little slower and "bloatier" in nature than AOSP, so the performance difference maybe be greater in CM.
chromiumleaf said:
I know that nfinitefx45 took compcache out of his latest builds in both the Stock and ZenHeroFX ROMs. I don't know all the technical reasons behind it, but I think it just didn't improve performance enough to be worth leaving it in. Granted those are Sense-based ROMs though which are generally a little slower and "bloatier" in nature than AOSP, so the performance difference maybe be greater in CM.
Click to expand...
Click to collapse
Thank you for the response, just wasn't sure. Since Darch left it unchecked, I figured I would ask

512Mb RAM - Getting it out ?

I have a Flash application that requires ~130Mb of RAM and I want to run it on my Galaxy S
I've installed Froyo JPK with latest flash 10.1, but just before the end of startup procedure I always get the "exclamation circle" icon which is apparently the "out-of-memory" message in flash.
I have tried to free up the memory with task killers and memory boster, but can't get it above 175 Mb, which is obviously still not enough, since probably browser and other applications/services use it back before the flash application starts completely. Or might be also some limitation my browser in Galaxy S ? -> see EDIT below
On HTC Desire this same application works like a charm.
So I wonder...
Is there any way to get more free memory ? [EDIT: Yes, with "Chuck Norris mode" app killers, but i does not always help and it's lame]
Is there any way to get more than 311-322Mb RAM used for Applications ? [EDIT: Yes, when developpers will found out the way how to get less memory used for video codecs or even found the misterious 32Mb which are yet nowhere to be found]
Can we expect to this memory issue to be solved in future Froyo releases ? [probably only Samsung knows that, but for now it seems very unlikely]
EDIT: Found out that I get out-of-memory with every single application when it reaches 128Mb of RAM usage.
This is again specific to SGS. Looks like this is some internal max memory allocation size per application/VM
So here is another question:
Is there any way to increase this limit (might be android internal or dalvik VM related)?
no
no
no
sorry to say that...
flypubec said:
I have a Flash application that requires ~130Mb of RAM and I want to run it on my Galaxy S
I've installed Froyo JPK with latest flash 10.1, but just before the end of startup procedure I always get the "exclamation circle" icon which is apparently the "out-of-memory" message in flash.
I have tried to free up the memory with task killers and memory boster, but can't get it above 175 Mb, which is obviously still not enough, since probably browser and other applications/services use it back before the flash application starts completely. Or might be also some limitation my browser in Galaxy S ?
On HTC Desire this same application works like a charm.
So I wonder...
Is there any way to get more free memory ?
Is there any way to get more than 309Mb RAM used for Applications ?
Can we expect to this memory issue to be solved in future Froyo releases ?
Click to expand...
Click to collapse
If you need that amount of memory you should use a computer.
Its not the phone thats the probem here. its what you try to run.
//Damian
I would personally put up money to get the RAM issue resolved.
People keep saying that 324~ MB is enough. That's not the point though. The point is that Samsung advertised 512MB. Any reasonable person would assume that, like other phones containing 512MB of RAM, that the phone would have 400+MB available for general usage. 324 MB for such a power phone is dismal. I consider Samsung's claim to be a form of false advertising. Yes, technically the phone has 512MB of RAM, but not according to the reasonable expectations of a consumer. Almost half of the stated RAM isn't usable to the end user for applications. This is a problem with the phone from the standpoint of delivering the expected value to the consumer.
Dear XDA Developer Legends,
Do you think it is possible that you will be able to free up ram that is allocated to the ram disk?
Yours,
Concerned Customers
Hm, maybe its applicable for a lawsuit?
andars05 said:
I would personally put up money to get the RAM issue resolved.
People keep saying that 324~ MB is enough. That's not the point though. The point is that Samsung advertised 512MB. Any reasonable person would assume that, like other phones containing 512MB of RAM, that the phone would have 400+MB available for general usage. 324 MB for such a power phone is dismal. I consider Samsung's claim to be a form of false advertising. Yes, technically the phone has 512MB of RAM, but not according to the reasonable expectations of a consumer. Almost half of the stated RAM isn't usable to the end user for applications. This is a problem with the phone from the standpoint of delivering the expected value to the consumer.
Click to expand...
Click to collapse
the phone has 512MB and you can use all. But the system use some of it.
Its only user that cant read and understand how it work hat keep asking about it.
And this phone has more ram that most have. So yes it is enough of ram.
'If you try to runt 50+ all time you will and up with low memory.
But its the same on a computer. none complain about that.
Only that you can only see 3.5GB on windows and use that on a 32.bit system. Well now you can see 4GB and all people are happy.. but they still cant use it, but its looks good.
That the same with this phone.
If samsung did show 512MB and did show how much that was free, all people that complain would be happy. but it dont change a bit what thay can use.
yaocheng said:
no
no
no
sorry to say that...
Click to expand...
Click to collapse
That make no sense
there is no reason to get less memory with the i9000 when comparable devices like the nexus one running the same OS version has 100mb+ more free ram
DamianGto said:
the phone has 512MB and you can use all. But the system use some of it.
Its only user that cant read and understand how it work hat keep asking about it.
And this phone has more ram that most have. So yes it is enough of ram.
'If you try to runt 50+ all time you will and up with low memory.
But its the same on a computer. none complain about that.
Only that you can only see 3.5GB on windows and use that on a 32.bit system. Well now you can see 4GB and all people are happy.. but they still cant use it, but its looks good.
That the same with this phone.
If samsung did show 512MB and did show how much that was free, all people that complain would be happy. but it dont change a bit what thay can use.
Click to expand...
Click to collapse
This misses the point of my original statement. The Nexus One is advertised (along with many other phones) as having 512MB of RAM. The N1 has 380-400+MB available of RAM available for applications, as do many other phones containing 512MB of RAM.
Yes, the system does reserve some for certain system functions. Even after those functions have been reserved on other 512MB models, the vast majority is still available to the end user. This is not the case on the Galaxy S series. This is evident by the original posters comment regarding his application.
To address your Windows example: Windows 32 bit actually states that only a portion of the 4GB is available for use. I don't see in the advertisements where Samsung states "Contains 512MB -- 324MB available for actual usage"
I think most consumers, like myself, would assume that the amount of RAM advertised is directly correlated to the amount usable for applications.
Otherwise, what's the difference between a phone advertised as having 384MB and the Galaxy S? They both could have the same amount of RAM available.
andars05 said:
Windows 32 bit actually states that only a portion of the 4GB is available for use.
Click to expand...
Click to collapse
But its not the case here.
+1 for the rest.
This is what i get if I run top command from adb from a freshly booted phone:
←[H←[JMem: 296300K used, 15048K free, 0K shrd, 6968K buff, 134720K cached
CPU: 1.3% usr 2.3% sys 0.0% nic 96.2% idle 0.0% io 0.0% irq 0.0% sirq
Load average: 0.99 1.33 0.59 1/351 3109
Wonder what this "cached" means.
Can somebody pls run this on HTC desire ?
I don't think our phone has 512mb of RAM physically available to the system. I think the phone has 512mb of RAM in total but it looks like 128mb of it is graphics RAM or something. Meaning we only have 384mb available to the system. The maximum amount of RAM I can ever get free is about 175mb so I don't think that it's reasonable that the system is using about 337mb of RAM. My desktop linux system uses less RAM than that on boot.
Isn't the memory allocation for graphics dynamic?
how often does the graphics really need all that ram?
any why aren't other devices affected by this? (doesn't the GPU on nexus or milestone for example need memory allocated?)
sionyboy said:
Do you think it is possible that you will be able to free up ram that is allocated to the ram disk?
Click to expand...
Click to collapse
Please explain. Which ram disk do you mean?
Also, since it runs on linux, cant we assign some space from the internal sd (or external) to make a virtual ram disk that would be used as ram when needed? some king a paging file that we know on windows...
And if this is possible, can we assign it to video so graphism will be a little slower but app will become faster?
I think there is something we can do if we can change assignation of ram, apps, and video to make this phone way much powerful.
(just an idea...)
franklin01 said:
Also, since it runs on linux, cant we assign some space from the internal sd (or external) to make a virtual ram disk that would be used as ram when needed? some king a paging file that we know on windows...
And if this is possible, can we assign it to video so graphism will be a little slower but app will become faster?
I think there is something we can do if we can change assignation of ram, apps, and video to make this phone way much powerful.
(just an idea...)
Click to expand...
Click to collapse
There's always Compcache..that worked like a charm on the G1 and Magic.
http://forum.xda-developers.com/showthread.php?t=724960
As you can see, all other Android phones reserve some memory to the system... It's just the way it is.
the sgs kernel creates amemory blackhole, that is, it starts using memory after a certain memory address.
It does that because many things in the hardware are using fixed memory addresses to allocate their own memory which is not managed by the kernel itself and the kernel will never touch or see it.
what you call "system memory" is usually memory used and seen by the kernel, for the OS's functionality: various applications, services, daemons, kernel daemons, kernel memory itself (its not much) and some time some ramdisks.
Every phone also uses that of course, which amounts for like 80-130megs. They also often use small black holes of like a couple of megs, but that's so little that no one will notice.
The sgs makes a big blackhole. To me it's more of a design fault, but not much you can do about it I guess. It would need someone who's going to read the complete hardware sheets to bypass that, if at all possible, lol. Or samsung.
I bet they fixed the design issue in the galaxy tab and either the chip has separate dedicated memory either there's no blackhole.
Another theory why the blackhole is necessary is that there's a bug in the chip and it's messing up a portion of the memory, so this portion is left unused (blackhole'd - never seen by the kernel) for stability reasons.
i hope this gives some insight.
reference from the previously linked post:
- Galaxy S [2.1] RAM = 512 MiB | Linux = 325 MiB | Reserved = 187 MiB (with I9000XWJM2 firmware)
notice the huge black hole here (187 megs)
I used to have more than 300mb free after reboot with nexus one...
DamianGto said:
the phone has 512MB and you can use all. But the system use some of it.
Its only user that cant read and understand how it work hat keep asking about it.
Click to expand...
Click to collapse
No, *we* can't use it all , because we != system. The debate is not whether or not there is 512MB of physical memory; there could be , since Samsung advertises as having 512MB, but its not all user accessible memory. We don't know for what the system is utilizing that memory, I don't think its for loading some of the core system components; otherwise we should be left with more free RAM like other devices with 512MB of RAM (i.e Nexus One). Its more likely that 188MB is used by either the GPU and other hardware or as a Ram disk.
In contrast, other phones having 512MB of RAM don't use user allocated memory for system or hardware use (at least not the same way Samsung does). They are somehow handling it differently, maybe their GPU's and Other hardware software counterparts have dedicated memory. Whatever said, at the end of the day in the user's point of view, Galaxy S DOES NOT have 512MB of RAM as what we were all led to believe . That is pure deception !!
If they knew this was the case then they should have alerted this to the users. For-example a spec sheet for Samsung Fascinates says 512MB Flash/384MB RAM they should have advertised Galaxy S like that instead of lying through their teeth.

[TUTORIAL] Compcache and Swap

my 2c about compcache (now "zram") and swap
Both compcache and swap are used to improve performance AND maximum number of open apps.
1)How they work:
swap is the classic way to "increase" ram on a system.
Swap is a space on a non volatile memory (="not ram") where unused ram data are parked instead of being deleted.
Swap wears(and kills) memories it is put on. It is an heavy access file. Sdcards don't like it. They are not full-featured SSD Disks. Think of your photographs
Compcache is the new way to "increase" ram on a system,
compcache :
-reserves a part of you ram (cache),
-then it looks for unused data sitting on remaining, "real", ram,
-compresses these unused data (with a very primitive,loseless, algorithm) and
- send them to its cache OR to swapfile.
Compcache's trick works well when you have lots of higly,easily, compressable data in your ram. Text is higly compressable, an executable is less compressable.
1a)
-if, after compression , data are still "big" (compressed data > original data /2), then compcache sends compressed data to swap, not to cache.
-and when compcache is full, unused compressed data are sent to swap.
2) because of compression involved, compcache uses more cpu cycles than classic swap.
3) settings of both depends on
-hardware specs of the system.
-use of the system
4) compcache+swap is better than swap alone if your ram is filled with EASILY compressable data.
4a)Remember point 1a : compcache has a simple compression algorithm, and ALWAYS first compresses data.
AFTER COMPRESSION it decides if keeping them in cache or sending them to swap. This means that
if compcache has always to work with not compressable data, it will compress them AND send to swap. this means double work: compression AND swap access.
4b) First practical conclusion :
compcache is useful for people using LOTS of text-intensive apps (forums, webpages, docs, facebook)
compcache may be useful in apps using SIMPLE still images (some games, driving assistant)
compcache is useless in multimedia activity (watching youtube, movies, photographs, listening to mp3s, playing some other games.)
5) The swap file.
As told at the beginning, swap, both improve performance(=speed) AND number of apps simultaneously open.
Lets' take a look to the PERFORMANCE thing.
5a)On "classical" (fragmented, not-SSD hard disk) systems, a swap file is always faster than retrieving datas from original disk locations. EVEN IF the swap file is on the same disk where original datas are.
This happens mainly because :
5a1)-data in swap file are less fragmented, needing less seek time.
5a2)-swap file is usually put in the external (=fast) zone of an hard disk,
5b)On SSD systems (phones included) 5a1 and 5a2 are not true, and a swapfile is USELESS IN IMPROVING PERFORMANCE EACH TIME THAT it is keeping data which are already present on its same phisycal memory.
Examples :
5b1)opera browser executable is on phone memory; but Opera-cached-webpages have been moved on sdcard via app2sd.
In this situation a swap file on sdcard is obviously useless to improve internet browsing with Opera.
5b2) i use apps (facebook, Whatsapp) which DON'T have a good caching of their own. Swap could be useful: it could avoid re-downloading data from the internet.
Now, the INCREASE MAXIMUM NUMBER OF OPEN APPS argument.
This is always true.
So:
5c)swapfile on SSD speeds up multitasking ONLY IF you use apps that
-badly manage (or don't have) a cache of their own.
-don't like force closing
Since this seems to happen very often to android apps, a swapfile is useful.
5c1)Swapfile could speed multitasking also IF an app's well-designed-cache is on a media WAY SLOWER than swapfile (but this is not LG O2x situation: it has a class10 internal memory).
So, my 2 cents about "increasing" RAM in LG O2X is :
-leave apps on phone memory, and put swap on a class10 sdcard.
-enable compcache only if you use lots of text-rich apps.
First: I think this doesn't really fit into the development section.
Then: I can't second the post you made.
mercxda said:
Both compcache and swap are used to improve performance AND maximum number of open apps.
(...)
As told at the beginning, swap, both improve performance(=speed) AND number of apps simultaneously open.
Click to expand...
Click to collapse
zRAM does NOT improve the speed of your device. Everything that's in the reserved zram storage will get compressed and decompressed, which takes some time (and cpu).
Swap is performing even worse. Instead of the fast RAM or the semi-fast compressed zRAM usage it's swapping onto the slow SD.
Sure, you can increase the maximum number of open apps, but the price is a lower performance.
So you're probably just meaning multitasking performance.
But still I can't agree to your conclusion:
mercxda said:
So, my 2 cents about "increasing" RAM in LG O2X is :
-leave apps on phone memory, and put swap on a class10 sdcard.
-enable compcache only if you use lots of text-rich apps.
Click to expand...
Click to collapse
As I wrote above zRAM is way faster than swap. So zRAM should be the first choice if you're running into low RAM situations.
If you still need more go and enable swap as well.
Last but not least:
Why are you talking about compache all the time? It's called zram nowadays, so call it that way.
tonyp said:
First: I think this doesn't really fit into the development section.
Click to expand...
Click to collapse
First : thanks for your interest in this post . I partially agree with you: this post is on the borderline beetwen Q&A and Development, because swap is not a development matter, it's standard unix's way of working.
On the other side zram's use,way of working, and even its inclusion (or not) itself in default installs, is still under development.
https://lists.ubuntu.com/archives/ubuntu-devel-discuss/2012-December/014122.html
Sure, x86/x64 is not ARM. And CM is not ubuntu.
Then: I can't second the post you made.
zRAM does NOT improve the speed of your device. Everything that's in the reserved zram storage will get compressed and decompressed, which takes some time (and cpu).
Swap is performing even worse. Instead of the fast RAM or the semi-fast compressed zRAM usage it's swapping onto the slow SD.
Sure, you can increase the maximum number of open apps, but the price is a lower performance.
So you're probably just meaning multitasking performance.
Click to expand...
Click to collapse
I, again , partially agree, i was fundamentally talking about multitasking performance. And sure, zram takes cpu cycles... I reserved a full, standalone point to say that.
But
i wouldn't be so sure about one being better than the other. My arguments are in the original post.
As I wrote above zRAM is way faster than swap. So zRAM should be the first choice if you're running into low RAM situations.
If you still need more go and enable swap as well.
Click to expand...
Click to collapse
As I wrote, and argumented, before, compcache/zram is way faster in a way limited range of situations.
Last but not least:
Why are you talking about compache all the time? It's called zram nowadays, so call it that way.
Click to expand...
Click to collapse
Because
1) I'm an old cat.
2) "Compcache" is a well chosen autodescriptive term.
3) It's been "compcache" for over 4/5 of it's life, and, well...
4) I'm an old cat. ;D
Have fun, and thanks for all your work in O2x developing.

Categories

Resources