Greetings,
Please forgive me if this is a stupid question or the wrong thread.
I am curious about memory allocation in Custom ROMS. I have an ATT Fuze and the Stock ROM stripped of junk had over 200MB of Program memory available. It seems like most of the Custom ROMs on this forum only start with 120MB or so.
It seems like most of the Custom ROMS all focus on the amount of Storage available rather than Program memory. With SD cards being priced so low that they are almost free, why is there more focus on Storage rather than Program memory? The phone cost close to $1,000 but I have an 8GB storage card that cost me $10.
I have migrated from an eTen X500 where I always struggled to find ways to free up program memory. Here it seems like there is no interest in program memory, only storage.
Not being critical, just curious about what I am missing.
Thanks for any advice.
Doug M.
You are in the wrong thread just so you know for future reference, but I'll answer your question. Many of the cooks do try to get you as much program memory as possible, and if you look on the threads for cooked roms, you'll find that they usually post the numbers for both. Several of the cooks also have a few different versions of their roms, so you can choose a lighter version that gives you more program memory. That being said, the TP already has tons of memory and gives you enough room to install tons of programs, especially if you're running a cooked rom.
There is only so much you can squeeze out of the Program Memory. I may be wrong but the Program Memory acts like memory cache for running programs. About the only way you can lower Program Memory is from removing files from the payload when you dump it and by moving around the different partitions to recover unused space. When I build my ROMs I have been using 16MB pagepool which eats away from the program memory but increases the quickness of windows a bit.
Storage on the other hand is so much easier to gain back...
Related
I'm way out on a limb right now checking out a few different things for v0.30. A lot has been learned with v0.20 and will be applied.
So my question is:
If I can find a way to eliminate Extended Rom and turn it into either Storage Memory or Program Memory (or both) which is preferred?
BTW, I've already been able to increase Storage Memory to over 60MB (See attached Image)...
kyphur said:
I'm way out on a limb right now checking out a few different things for v0.30. A lot has been learned with v0.20 and will be applied.
So my question is:
If I can find a way to eliminate Extended Rom and turn it into either Storage Memory or Program Memory (or both) which is preferred?
Click to expand...
Click to collapse
Program memory is sufficient; go for Storage
Olipro said:
Program memory is sufficient; go for Storage
Click to expand...
Click to collapse
I agree, I always run short on Storage and have enough program
Storage is the first to run low.. same as the above.
-mix
I don't agree with all of you Storage can be buyed but program memory is limited. Who knows the memory requirements in future WM6 programas.
My vote for program memory!
I'm with Viva. Low on storage? Move programs over to the card. Low on RAM? You're screwed. I say move it over to Program memory. That seems to be the most logical.
TaurusBullba said:
I'm with Viva. Low on storage? Move programs over to the card. Low on RAM? You're screwed. I say move it over to Program memory. That seems to be the most logical.
Click to expand...
Click to collapse
Many are having problems running programs from Storage Card too, some think this is the root of some sleep lockups too. How many people ever runout of Program Memory? Maybe we should do that poll. I have a hard time keeping more tan 7MB free in storage., but I have at least 15-19MB free in Program.
Hi kyphur,
i think an additional 10mb of storage memory wont be sinifcant as the 60mb you have achieved in wm6 is suffice. if we need additional storage memory we have the sd cards to take care of it.
10mb of PROGRAM MEMORY is significant as we only have under 30mb free on a fresh hard reset and after a day of use this drops to about 24mb or less. the extra 10mb will allow us to run, well in my case, many apps with ample program memory and not worry about bogging down the system.
Therefore my vote goes to program memory.
But I have one concern with using ROM storage as program memory. RAM and ROM differ signifcantly in terms of technology and the ROM has much slower access rates than RAM. Would this have a signicant impact on performance?
Nonetheless, id still prefer it to be program memory.
Alot of programs run better from internal storage than from a storage card.
As already mentioned I havent run out of progam memory yet. But there again I have never run out of storage space either.
So my vote is for two thirds storage one third programs as apposed to half and half just to be different.
By the way keep up the good work kyphur, it is much appreciated.
kyphur said:
BTW, I've already been able to increase Storage Memory to over 60MB (See attached Image)...
Click to expand...
Click to collapse
I suggest you max out that storage to see if it actually is valid or not.
Olipro said:
I suggest you max out that storage to see if it actually is valid or not.
Click to expand...
Click to collapse
That is true too, if there are any doubts as to reliabilty, stability then go with storage as well.
50 - 50 Split for everyone.
I have an Ultra 1 Gb SD Memory card Fitted (Faster than std SD) and I have Not loaded any programs on the Phone. (Everything is on the SD) but I am starting to see that my Program memory is getting Low. So I would benefit from more program memory.
I don't know if the Ultra Card makes a difference but I have very few if any Lock ups / Freezes.
I do agree with most on max the storage to see how stable it is...., but I would like both. An option to do either on the fly would be even better.
kyphur, lots of thanks for the great Roms you're cooking and developing! one question though, if Extended Rom gets eliminated in the next version, then will there be some way left to make programs like theft alert survive hard resets?
no no... I mean fill the storage up completely and then soft-reset the PDA to see if it's actually *real* space.
Program seems to make the most sense to me
Program is a good idea so is storage so that is why i vote 50/50. I am running out of both of them anyway.
I know I can use an SD card but it is not the same. SD installed apps causes the device to lock up at times.
Thank's a lot kyphur.
I'm democratic so 50 & 50 but, how wrote Olipro, before real test.
Well,split it even might be logical as few apps need to be installed in phone memory for better performance...........
My vote will be to :: release 2 ROMs ,one with more program memory and one with more storage memory and the users will decide which one to vote ...(will it be too much work releasing 2 ROMs??,if yes then Program memory wins!!)
Kyphur,
if you build two different ROMS, one with maxxed out program memory and one with maxxed out storage id like to run SPB benchmark and post the results for a better polling result....
edit... i would like more storage but dont want to lessen the performance...
Hey guys i think this should be an important challenge to overcome maybe find out where all the ram is going and get it back without reseting our precious moguls. My experience its something that Task manager doesn't show up because when i end task on my DCD 3 1 2 ROM i dont get all of my memory back like right after reset. Also this causes inconvinient problem of starting GPS after few days of RAM going down to 8mb and not having enough to lunch TOMTOM.
Oxios doesn't not regain full mem only one third of it.
Can we some how make a better task manager or maybe purge RAM?
Writing a driver to consider our FLASH cards as constant RAM?
I would gladly sacrifice remove ability of my MicroSD for extra 4 gigs of ram and would let my memory leak on a period of roughly 4 years of constant usage.
Please lets get organized and stop hoping the next ROM upgrade will solve this issue.
This is one of the biggest downfalls of the mogul
I would suggest looking into how RAM works before making this thread.
First off, most of our ram appears to be lost due to memory leaks.
http://en.wikipedia.org/wiki/Memory_leak
And since, at least in my experience, most of the memory leak comes from Windows 6 (and so much worse in 6.1), you can't exactly end the windows task unless you...
restart the Mogul.
So no, an application, or task manager, wont do you any good. Not until they fix windows 6.1 up to not be lord of memory leaks. That is why new roms are often so desired, because only a rom release with some decent version of 6.1 with hopefully some patched memory leak holes could help our problem.
Second, you can't use a flash drive as ram, at least its not reasonable. You think the Mogul slows down now? Wow, just wait to you see it moving at the blistering pace of a microSD card.
Ram is so small, and so expensive, largely due to its speed. Thats why you can buy a 500GB HD for about the cost of 4GB of RAM on your computer.
Also, running from the MicroSD would be similar to the page file on your home computer. It runs from, in most cases, your C drive, its a fairly large file, getting even larger when you run multiple tasks on a low RAM system.
It is slow as a dog, and is one of the worst causes of system slowdowns. I also believe that MicroSD's have a limited number of read/writes. While not an issue so much for everyday use (taking pictures, running an app from time to time), if it were used as a swap file, it would probably wear out that SD card pretty quick.
So no, short of an amazing, simple amazing, piece of software engineering on Microsoft's part on a new Windows Mobile, someone developing some sweet, easy to install ram upgrade, or the new replacement for the Mogul coming out with more ram than we know what to do with.
You will be restarting your Mogul.
It should be possible to wright a Driver to USE RAM for swap file and some of main drivers but MicroSD card to be used to run all the extra features and programs. Also why our team of coders cant plug the memory leaks or find out the runing programs not seen by Task manager and have option to close them?
PS
Thanks for confirming my worst dream about the limits of our mogul. Also I notice that PPC on palm trios seems not to have these memory leaks.
This is maybe possible if we can build a tool that can reboot the shell without rebooting the actual OS. It can be combined with the command to free the memory when the OS is unloaded. This is my theory, i think that we can recover memory like this
VulnoX said:
I would suggest looking into how RAM works before making this thread.
First off, most of our ram appears to be lost due to memory leaks.
http://en.wikipedia.org/wiki/Memory_leak
And since, at least in my experience, most of the memory leak comes from Windows 6 (and so much worse in 6.1), you can't exactly end the windows task unless you...
restart the Mogul.
So no, an application, or task manager, wont do you any good. Not until they fix windows 6.1 up to not be lord of memory leaks. That is why new roms are often so desired, because only a rom release with some decent version of 6.1 with hopefully some patched memory leak holes could help our problem.
Second, you can't use a flash drive as ram, at least its not reasonable. You think the Mogul slows down now? Wow, just wait to you see it moving at the blistering pace of a microSD card.
Ram is so small, and so expensive, largely due to its speed. Thats why you can buy a 500GB HD for about the cost of 4GB of RAM on your computer.
Also, running from the MicroSD would be similar to the page file on your home computer. It runs from, in most cases, your C drive, its a fairly large file, getting even larger when you run multiple tasks on a low RAM system.
It is slow as a dog, and is one of the worst causes of system slowdowns. I also believe that MicroSD's have a limited number of read/writes. While not an issue so much for everyday use (taking pictures, running an app from time to time), if it were used as a swap file, it would probably wear out that SD card pretty quick.
So no, short of an amazing, simple amazing, piece of software engineering on Microsoft's part on a new Windows Mobile, someone developing some sweet, easy to install ram upgrade, or the new replacement for the Mogul coming out with more ram than we know what to do with.
You will be restarting your Mogul.
Click to expand...
Click to collapse
while every single statement you say is true, your only wrong about how long ti takes to wear out a flash device. According to Toshiba, the inventor of Flash memory and one of the top suppliers of Flash memory chips, the 10,000 cycles of MLC [Multi-Level Cell] NAND is more than sufficient for a wide range of consumer applications, from storing documents to digital photos. For example, if a 256-MB MLC NAND Flash-based card can typically store 250 pictures from a 4-megapixel camera (a conservative estimate), its 10,000 write/erase cycles, combined with wear-leveling algorithms in the controller, will enable the user to store and/or view approximately 2.5 million pictures within the expected useful life of the card.
For USB flash drives, Toshiba calculated that a 10,000 write cycle endurance would enable customers to completely write and erase the entire contents once per day for 27 years, well beyond the life of the hardware.
take into note that is only 10,000 write cycles. 100,000 which is common for most flash drive now a days. so no, he wont even be around to see the day his flash drive even wears out. LOL.
Glad to see this post picking up some steam But lets Try and focus on making A solution rather than discussin known facts
the known facts have already pointed out the problem (memory leaks in the OS) and the only solution we have without the source code (restart the OS by rebooting the phone) so what else is there to discuss?
oh yeah, we can talk about ways to get the source code so we can fix it.
well i posted one idea:
http://forum.xda-developers.com/showpost.php?p=2257436&postcount=4
Hi all. Today i have disassemled my Diamond2 (I have looking for reason why it have 288mb of RAM)
And found interesting thing:
Diamond2 have only 1module of memory, it's Samsung (I have recorded markers on the chip but have lost the papper.. ****)
i have COMPLETELY disassemled the phone, i found only ONE module of ram (For example my previous phone had two pieces)
So i think HTC did this:
They merged nonvolatile slow 1024mb module for:
1)512mb for internal storage
2)288mb for RAM
3)Anoter 224mb has been hidden
Its explains how HTC got 288mb for RAM, also explains why Diamond2 3(!)times slower than SE X1 in memory bandwith benchmark (nonvolatile memory not so fast as traditional RAM module).
So i think its possible to get more RAM by editing rom's memory mapping. Actually i can't do it by myself, but is there someone who can do it? I can test "New gen roms" in my spare time
P.S. Eventually we can just pump some MB from Storage (Are you need so much?) to RAM (You definitely need it, especially when use rom with Manila2.5)
P.P.S. Why i think its 1024mb module? Because i never ever seen memory chips like 768mb
good idea.
sadly that I don't know any thing about technics.
looking forward that some guys will make it.
BUMP.
I would love to see this come about!
The module is:
SAMSUNG 967 KBY00N00HM-A448 GML215A7.
Checked with google, didnt find how large it are, but its really nonvolatile memory, also very cheap
Interesting
+1
I always wondered about this. Would be nice if someone could pull this off. Mine starts up with only about 70mb free (uggggh) and slowly but surely goes down to around 58 where it finally seems to stable out at.
Interressed too !
that's quite some smarts digging this up!
will keep checking here for the holy grail of more memory...
I only wish that its possible to do it.
we all are much interessted , but search the developer... i dont know it if works, I mean the topaz is already 1year old , i can't believe that nobody have try this already...
but i hope =D
maybe a radio update will do the trick, like it did on the HD2
Possible beginning of a solution
If it is a 1024MB chip then maybe they simply laser cut a connection somewhere giving access to the rest of the available memory.... Like AMD did on the old Athlon chips to lock the multiplier.
If this is the case then all that's needed is a graphite pencil and the location of the cut connection and we're in business!
except that AMD CPU was on a large peace of PCB, and the connection was easily in sight, while here we're talking about a possible 65 nm technology memory chip completely encapsulated. good luck using a pencil on that. sorry I'm such a show stopper, but it's gotta be somewhere else.
This is a memory module, not an old athlon CPU
Have found a little guide from Loox device:
1) Patch nk.exe ("ulRAMEnd" must read value from ROMHDR, not an constant)
2) Patch nk.exe (Dont let "IPM-functions" in nk.exe rewrite registers in memory controller and activte additional RAM partitions.
3) Change "ulRAMEnd" in ROMHDR, XIP partitions.
4) Edit "OEMAddressTable" in nk.exe.
Just realized, we can try to change "MainMemoryEndAddress" in nk.exe (S000 file). It works for Kaiser/Polaris/Niki, gains 16mb of RAM
This is Great!!! If there is a possible way to do this then our TD2's will run much better and faster
and then if only we can overclock damn processor...
Have checked situation about HD2 hidden ram and found that it actually same with D2 - HD2 also have only one memory module, it doesnt have real RAM memory too.
So it was possible to resize RAM partition by flashing new rom and radio(?).
So i 100% sure it can be done on topaz.
(By the way i think Diamond, TP and Rhodium affected too cause they all got very slow RAM with strange size)
I dont have PC so i cant do it by myself
So our hope is cookers only, or someone like Olinex
P.S. Can someone send me nk.exe from HD2 original and new (With unlocked RAM) roms?
Interesting find! I'm following this with excitement hopefully someone can do something about this... but then thinking about it isn't some of this extra RAM saved for hard resetting by the bootloader?? Getting rid of this will stop that or am I confusing this with the ROM space?
Tim4 said:
Have checked situation about HD2 hidden ram and found that it actually same with D2 - HD2 also have only one memory module, it doesnt have real RAM memory too.
So it was possible to resize RAM partition by flashing new rom and radio(?).
So i 100% sure it can be done on topaz.
(By the way i think Diamond, TP and Rhodium affected too cause they all got very slow RAM with strange size)
I dont have PC so i cant do it by myself
So our hope is cookers only, or someone like Olinex
P.S. Can someone send me nk.exe from HD2 original and new (With unlocked RAM) roms?
Click to expand...
Click to collapse
You should also post this in the HD2 ROM Development thread, hopefully someone will send you the files.
Also, this thread is getting more and more interesting! I hope you can come up with something!
Best regards
it isn't some of this extra RAM saved for hard resetting by the bootloader?? Getting rid of this will stop that or am I confusing this with the ROM space?
Click to expand...
Click to collapse
Nope, hard-reset will just delete all files on main storage that doesnt have "ROM" marker. Its the only thing it does and doesnt requires extra ram. (I think so, may be i wrong )
I've been quietly lurking on this site for about 2 weeks since I got a nook tablet (16GB) with an N2A card (which was horrible). I came to this site looking for a way to mod my device and ended up learning a lot more than I intended. I have sampled quite a few ROMs on here and am astonished at the amount of work that has gone into these ports. I have a device that is so much more functional it's not even funny. Already I've reclaimed the space that BN had partitioned from users. I still have a lot to learn but I wanted to express my thanks to all the developers who work hard on these. I am very appreciative that a device which is technically 'obsolete' can be revitalized and turned into something very usable. I am still trying out various ROMs to try to see which is giving me the best stability and RAM use. So far the one I am using I unfortunately forgot the name of. Any way of finding out which ROM you might have flashed? What I like about it is most of the ROMs use so much RAM I am left with around 200MB of RAM without anything running. One particular ROM I'm using consistently gives me around 400-450 MB of free RAM even with some background apps running. A HUGE improvement. A couple ROMS literally left me with less than 100MB. Anyway if anyone has any advice or happens to know how to determine which ROM I might be using I'd be very happy. Mainly I wanted to introduce myself and thank the developers. GREAT STUFF!
Some info that most Android users are not aware of, as its a bit non-intuitive:
Having less memory (RAM) available is actually a good thing. Apps can be "running" in the background without actually using the processor or other resources. They are cached via the RAM in order to allow you to relaunch them quickly. Android's memory management is quite good, albeit different from say Windows.
This is why Task Killers are generally a bad idea. I used to use them as a means to kill apps when they froze or whatever, but now, with the roms I have on my devices, I have set long-press of the back button to kill the current app, should I need to do this.
Read this article for a bit more info.
tl;dr less memory available is not necessarily a bad thing on Android.
Sorry for delayed reply
Forgive my tardy response. Our internet was out for 2 days. I understand what you are saying but what I was noticing was a huge number of active programs that were not in use, nor are commonly in use enough to justify their being cached. One particular ROM was leaving me with less than 200 MB of RAM with the same processes referred to above being inactive as well. A 200MB difference with the same stuff running. The particular one I'm on now keeps a number of things running in the background and still leaves me with well over 300MB with 4-5 programs going at the same time. So while I agree with you that some might be doing more cache than others, my experience is telling me the build with the most RAM (ie whichever one I am using...I unfortunately forgot which I installed...a CM10 but not sure if it was the cherry pick or chris'.) is the one that is managing the memory the best. I can figure out no other explanation for the same number of programs using an extra 200 MB of memory over another rom and thinking that is a good thing. For example, the ones I am thinking of are running stuff in the background I don't even use. Power Amp is a huge offender for whatever reason. I see no reason to have it running 24/7 but it does!
I have no real knowledge of the workings of the Android OS, so please forgive me if I'm asking stupid questions.
I'm on MM, internal storage reports that the Android system is taking up 9.42GB of space.
However, after deleting various Sony and Google bloat in /system, I found that it STILL reports 9.42GB used.
I am positively sure I deleted hundred of MB of files, so I highly doubt that's the real number.
I presume that 9.42GB is actually just the size of the partition reserved for the Android system, as opposed to the actual size of files taking up space.
If true, then there must be lots of potentially wasted free space on there that I could use.
How do I reclaim the unused space? Is there a tool to easily do it? I couldn't find any information related to Xperias, most were discussing Nexuses.
I'm rooted, so I don't have FOTA concerns. I don't necessarily need to reclaim every single bit that's not used if it's wise to leave a certain amount of free space for the OS to work with.
But if say it's only really using 4GB, and needs 1GB extra, then I'd like the remaining 4GB back.
If it affects or prevents me from updating to future stock firmware releases, please also let me know.
Thanks!