Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,780,303 Members 43,254 Now Online
XDA Developers Android and Mobile Development Forum

This is where our RAM is used

Tip us?
 
hardcore
Old
#1  
Senior Member - OP
Thanks Meter 8,146
Posts: 3,435
Join Date: Sep 2006

 
DONATE TO ME
Default This is where our RAM is used

Hi guys,

Not sure if this has been found yet, but in the dmesg logs you can see how the RAM on the Galaxy S is reserved.

This is from the JPK ROM:

[ 0.000000] S5PV210: PLL settings, A=800000000, M=667000000, E=96000000
[ 0.000000] s5pv210: 37748736 bytes system memory reserved for mfc at 0x30ec2000
[ 0.000000] s5pv210: 37748736 bytes system memory reserved for mfc at 0x40204000
[ 0.000000] s5pv210: 14680064 bytes system memory reserved for fimc0 at 0x42604000
[ 0.000000] s5pv210: 1048576 bytes system memory reserved for fimc1 at 0x43404000
[ 0.000000] s5pv210: 12582912 bytes system memory reserved for fimc2 at 0x43504000
[ 0.000000] s5pv210: 16777216 bytes system memory reserved for pmem at 0x332c2000
[ 0.000000] s5pv210: 10485760 bytes system memory reserved for pmem_gpu1 at 0x342c2000
[ 0.000000] s5pv210: 1536000 bytes system memory reserved for pmem_adsp at 0x34cc2000
[ 0.000000] s5pv210: 5132288 bytes system memory reserved for jpeg at 0x44104000
[ 0.000000] s5pv210: 10485760 bytes system memory reserved for texstream at 0x445e9000
[ 0.000000] s5pv210: 3145728 bytes system memory reserved for fimd at 0x44fe9000
[ 0.000000] s5pv210: 262144 bytes system memory reserved for wifi at 0x34e39000
[ 0.000000] Built 3 zonelists in Zone order, mobility grouping on. Total pages: 117856
[ 0.000000] Kernel command line: console=ttySAC2,115200 loglevel=4
[ 0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[ 0.000000] Memory: 80MB 256MB 128MB = 464MB total
[ 0.000000] Memory: 308048KB available (9224K code, 1910K data, 2868K init, 0K highmem)

I added up all the "system memory reserved for..." lines and got 151,633,920 bytes (144.6MB) reserved.

So the kernel can definitely see about 464MB of RAM in this case, but only 308,048KB is available.
 
mtoneman
Old
#2  
Junior Member
Thanks Meter 3
Posts: 29
Join Date: Aug 2010
Quote:
Originally Posted by hardcore View Post
Hi guys,

Not sure if this has been found yet, but in the dmesg logs you can see how the RAM on the Galaxy S is reserved.

This is from the JPK ROM:

[ 0.000000] S5PV210: PLL settings, A=800000000, M=667000000, E=96000000
[ 0.000000] s5pv210: 37748736 bytes system memory reserved for mfc at 0x30ec2000
[ 0.000000] s5pv210: 37748736 bytes system memory reserved for mfc at 0x40204000
[ 0.000000] s5pv210: 14680064 bytes system memory reserved for fimc0 at 0x42604000
[ 0.000000] s5pv210: 1048576 bytes system memory reserved for fimc1 at 0x43404000
[ 0.000000] s5pv210: 12582912 bytes system memory reserved for fimc2 at 0x43504000
[ 0.000000] s5pv210: 16777216 bytes system memory reserved for pmem at 0x332c2000
[ 0.000000] s5pv210: 10485760 bytes system memory reserved for pmem_gpu1 at 0x342c2000
[ 0.000000] s5pv210: 1536000 bytes system memory reserved for pmem_adsp at 0x34cc2000
[ 0.000000] s5pv210: 5132288 bytes system memory reserved for jpeg at 0x44104000
[ 0.000000] s5pv210: 10485760 bytes system memory reserved for texstream at 0x445e9000
[ 0.000000] s5pv210: 3145728 bytes system memory reserved for fimd at 0x44fe9000
[ 0.000000] s5pv210: 262144 bytes system memory reserved for wifi at 0x34e39000
[ 0.000000] Built 3 zonelists in Zone order, mobility grouping on. Total pages: 117856
[ 0.000000] Kernel command line: console=ttySAC2,115200 loglevel=4
[ 0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[ 0.000000] Memory: 80MB 256MB 128MB = 464MB total
[ 0.000000] Memory: 308048KB available (9224K code, 1910K data, 2868K init, 0K highmem)

I added up all the "system memory reserved for..." lines and got 151,633,920 bytes (144.6MB) reserved.

So the kernel can definitely see about 464MB of RAM in this case, but only 308,048KB is available.

That's interesting. If we take the line:

Memory: 80MB 256MB 128MB = 464MB total as the total memory

So adding it all up:

((464 * 1024 (total memory)) - (9224 + 1910 + 2868 (reserved for kernel) + (144.6 * 1024 (reserved by system) ))) / 1024 = 306 MB (available for apps)

However we should be seeing 512Mb not 464 as the total, so we are missing 48 Mb somewhere.
 
clubtech
Old
#3  
Senior Member
Thanks Meter 297
Posts: 1,674
Join Date: Jun 2007
Location: USA
I still don't understand how the Galaxy Tab sees 444MB for actual applications.

http://www.youtube.com/watch?v=KoOWPjIel-c look at 4:40 in this video. it clearly shows how much RAM the tab is seeing.
Maybe we should poke inside the TAB's firmware to find out what is different?
The hardware is almost 1:1 with the SGS.
HARDWARE: AT&T 8285 > iPhone 3G > Toshiba TG01 > iPhone 3GS > HD2 > AT&T N1 > EVO 4G > Samsung Galaxy S > Samsung Galaxy Tab > Samsung Nexus S > Atrix 4G > Motorola Xoom > Thunderbolt > Galaxy S II > Galaxy Tab 10.1 > HTC Flyer > E4GT > Galaxy Note > Galaxy S 3 > Galaxy Note II > HTC One > Galaxy Note 8 > Galaxy S 4
 
TheBeano
Old
#4  
Senior Member
Thanks Meter 193
Posts: 348
Join Date: Jul 2010
Quote:
Originally Posted by hardcore View Post
Hi guys,

Not sure if this has been found yet, but in the dmesg logs you can see how the RAM on the Galaxy S is reserved.
Yes, see this thread starting here.
 
MCOGW
Old
#5  
MCOGW's Avatar
Senior Member
Thanks Meter 61
Posts: 277
Join Date: Sep 2010
Quote:
Originally Posted by mtoneman View Post
That's interesting. If we take the line:

Memory: 80MB 256MB 128MB = 464MB total as the total memory

So adding it all up:

((464 * 1024 (total memory)) - (9224 + 1910 + 2868 (reserved for kernel) + (144.6 * 1024 (reserved by system) ))) / 1024 = 306 MB (available for apps)

However we should be seeing 512Mb not 464 as the total, so we are missing 48 Mb somewhere.

It's probably the dalvic-cache!

Because "/system/build.prop" says: "dalvik.vm.heapsize=48m"

Just an idea
 
drowne
Old
#6  
Member
Thanks Meter 0
Posts: 32
Join Date: Aug 2010
any improvements if we set an higher value for dalvik heapsize?
 
flypubec
Old
#7  
Member
Thanks Meter 72
Posts: 97
Join Date: Aug 2010

 
DONATE TO ME
Quote:
Originally Posted by MCOGW View Post
It's probably the dalvic-cache!

Because "/system/build.prop" says: "dalvik.vm.heapsize=48m"

Just an idea
This is the max heapsize for a single VM...meaning
the single application can allocate max of 48Mb heap before it gets out of memory.

This has nothing to do with RAM reservation
 
hardcore
Old
#8  
Senior Member - OP
Thanks Meter 8,146
Posts: 3,435
Join Date: Sep 2006

 
DONATE TO ME
Quote:
Originally Posted by MCOGW View Post
It's probably the dalvic-cache!

Because "/system/build.prop" says: "dalvik.vm.heapsize=48m"

Just an idea
No its not the dalvik heapsize. Changing that value doesn't give us more usable RAM.

I'm wondering about the Tab too. I was playing with a prototype and it definitely had more accessible RAM, as one poster said - more than 400MB. Would be good to see the dmesg boot log from a Tab to see what the system reserved and total memory is.
 
mtoneman
Old
#9  
Junior Member
Thanks Meter 3
Posts: 29
Join Date: Aug 2010
According to this:

http://forum.xda-developers.com/show...792512&page=11


there are one 2GBit (256MByte) and 2 x 1GBit (128MByte each) RAM chips totalling 512MBytes on the board. What we need to find out is why the kernel is reporting "Memory: 80MB 256MB 128MB".
i.e. what happened to the 48MByte on one of the 1GBit modules.
 
MCOGW
Old
#10  
MCOGW's Avatar
Senior Member
Thanks Meter 61
Posts: 277
Join Date: Sep 2010
Quote:
Originally Posted by hardcore View Post
No its not the dalvik heapsize. Changing that value doesn't give us more usable RAM.
I don't think it's that easy to (really) modifiy this value. I think you need a JTAG to modify this because these are direct parameters for the (smdkc110) chip.
So how did you manage (and verified) this?

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes