Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Why did apple make an model with 8 gigs of RAM when its only accesible up to 4 gigs?

http://www.apple.com/macbookpro/specs.html

2GB (two 1GB SO-DIMMs) or 4GB (two 2GB SO-DIMMs) of 1066MHz DDR3 SDRAM; two SO-DIMM slots support up to 4GB

Apple sells the system as a 4 GiB maximum supported.

Some people are installing a pair of 4 GiB SODIMMs, and complaining that OSX doesn't use 8 GiB.

Nvidia says that the chipset supports 8 GiB (and the fact that it boots with 8 GiB installed is good evidence for that).

The mystery is to discover which part of Apple's software isn't recognizing the 8 GiB of memory.
 
Doing large J2EE web application development, I run into paging on my 3GB MBP (older one that can't use 4GB) and my 4GB Dell (running Ubuntu or XP) all of the time.

What I'm doing simultaneously that drives that need:
1. Opening multiple, large IntelliJ and/or Eclipse projects: about 512MB to 1GB used per
2. Running our app on JBoss with 1GB to 2GB heap space: min 1.5GB used
3. Running a 2nd Tomcat app server to test: probably about 256 - 512 MB used
4. Compiling in Maven2: 1.25GB when running automated tests probably 768MB for incremental builds
5. Entourage: hundreds of MB
6. Firefox 3: as much as it can grab!

Then add in the occasional OmniGraphel, Excel, Word or other office app and you are paging like a madman. (Not to mention if I have to fire up VMWare to test with IE or run one of our company's Win32 only office applications)

Exactly the same for me. Except instead of JBoss, Weblogic. And an Oracle 10g instance.

I'm thinking about the thinkpad W500 or W700 because it can do 8gb.
 
I know iFixit has been silent since some time - but just throwing it out here -

It is very much possible that the OSX build that is on the MBP has hard coded limits in the kernel that specify the maximum amount of memory to use and/or there are other parameters that are tuned for operation with <= 4GB RAM.

If one takes a Leopard DVD that comes with a recent Mac Pro and hacks it (there are script checks for model numbers in the DVD/installer which prevent Leopard build shipped with say a Mac Pro from being installed on a later Generation Macbook Pro - but those are very easily subverted - you just have to enter the model # of the target mac into a array after copying it to say a USB or Firewire disk.) to install on the 8GB Mac Book Pro - we might see that the Mac Pro OS X kernel build works fine (i.e. uses all 8Gb as it is very likely tuned for more than 4GB RAM).

I know this sounds like a lot of work to do but it will clear up or confirm the suspicion that the OS build is the problem.

Or better yet - ship me the machine with 8Gb installed and I will do all tests for you, iFixit! :)

We know from iFixit that these machines can handle 5 GB of RAM just fine, so it is not a 32 bit problem. The OS is also not the problem because we know it handles 32 GB. Most likely is that the hardware has address lines for 8 GB, some address space is used for other hardware so you can't have a full 8 GB for RAM, and someone made a mistake and the operating system doesn't get access to _parts_ of a RAM chip.

If firmware was the issue - it would result in hard lockups or the OS wouldn't see the total 8GB at all. In this case the OS sees all the 8GB but doesn't use it. I can't imagine how the firmware would cause this.

Have you never debugged any code?

The firmware detects what RAM chips are plugged in. It detects one RAM chip with 4 GB. Then it detects another RAM chip with 4 GB. Note that the firmware doesn't need to _support_ these chips in order to recognise them; it would be entirely possible to have firmware that can only support 256 MB but can _recognise_ any kind of chip plugged in.

So the firmware now knows: 2 x 4 GB. And it reports it to the OS, so the OS knows that there is 8 GB of RAM physically inside the computer. The firmware also knows that it cannot actually use the complete 8 GB of RAM. Maybe it can use 7.25 GB. So some code needs to be executed that sets up the RAM properly. If everything was done in the best possible way, 4 GB of the first chip would be used, and 3.25 GB of the second chip. The remaining 0.75 GB would be marked so that the operating system never, ever tries to touch it. So there are two different numbers: 8 GB RAM physically present, 7.25 GB usable. And that is where there is likely some bug in the firmware.

Maybe there is code in the firmware that says "If first chip = 2GB and second chip = 2GB and total limit = 4GB then use 3.25 GB". And nobody bothered to adapt that bit of code to the new machines. That would make sure that the machines will crash if you have 8 GB RAM. Or the code could be "If (old hardware) then limit = 3.25 GB else limit = 7.25 GB. If first chip + second chip > limit then use 3.25 GB". With some stupid bug like that, 4 GB + 1 GB or 4GB + 2GB would be fine; 4 GB + 4 GB would only be able to use 3.25 GB.

Three of us have independently tried this (8 gb) with the same result, thus it is unlikely that faulty RAM is the culprit.

Can you tell us whether 6 GB runs fine or has problems as well?
 
New Macbook Pro doesn't support 4g either...

This may be a bit off topic but I am having trouble having new 2.4 MBP freeze often after having installed 4g kit. There seems to be a lot of knowledge on this thread. Others are seeing the same thing and using different brands. I have tried different sticks, albeit both were Patriot. I have had great luck with Patriot before as have others. What's up with this? Are there some timing settings that can be set? No idea but frustrated.

What's with the political ads on MacRumors and all the same ones?
 
Can you tell us whether 6 GB runs fine or has problems as well?

I've been running 6 gb for several weeks in my MBP/SR without any problems at all. I still wonder if on SR the 8 gb RAM plus 256 mb of vRAM might be causing a problem with memory management (i.e., "seeing" it as 8.256 gb, thus over the 8 gb limit). I've been looking around for an SR MacBook to put the two 4 gig sticks in to test it with the piggy app, but I can't seem to find anyone with one.

This may be a bit off topic but I am having trouble having new 2.4 MBP freeze often after having installed 4g kit. There seems to be a lot of knowledge on this thread. Others are seeing the same thing and using different brands. I have tried different sticks, albeit both were Patriot. I have had great luck with Patriot before as have others. What's up with this? Are there some timing settings that can be set? No idea but frustrated.

Sounds like you have a bad or incompatible SO-DIMM. Four gigs shouldn't be a problem for yours.
 
Have you never debugged any code?
Not only debugged - I have written quite a bit of OS code and I can tell you this much - that if firmware is disabling access to parts of RAM - the OS will NOT SEE it. And we know very well that the OS sees it in this case.

So the firmware now knows: 2 x 4 GB. And it reports it to the OS, so the OS knows that there is 8 GB of RAM physically inside the computer. The firmware also knows that it cannot actually use the complete 8 GB of RAM. Maybe it can use 7.25 GB. So some code needs to be executed that sets up the RAM properly. If everything was done in the best possible way, 4 GB of the first chip would be used, and 3.25 GB of the second chip. The remaining 0.75 GB would be marked so that the operating system never, ever tries to touch it. So there are two different numbers: 8 GB RAM physically present, 7.25 GB usable. And that is where there is likely some bug in the firmware.

You are confusing address space with RAM. Firmware of course uses and reports all the RAM - some is reserved, some is ROM but all is used. It is just that for 32-bit scenario, the 4GB ADDRESS SPACE requires parts of it to be reserved to map devices which limits the total ADDRESS SPACE to less than theoretically possible 4GB. Secondly it would be very weird if the firmware reseved 4GB as unusable and the OS reported it as FREE memory.

Maybe there is code in the firmware that says "If first chip = 2GB and second chip = 2GB and total limit = 4GB then use 3.25 GB". And nobody bothered to adapt that bit of code to the new machines. That would make sure that the machines will crash if you have 8 GB RAM. Or the code could be "If (old hardware) then limit = 3.25 GB else limit = 7.25 GB. If first chip + second chip > limit then use 3.25 GB". With some stupid bug like that, 4 GB + 1 GB or 4GB + 2GB would be fine; 4 GB + 4 GB would only be able to use 3.25 GB.

Again - if the firmware did not tell the OS about the full 8Gb it will not see it. That memory WILL NOT BE reported to OS via the memory maps and as such it will NOT show up as FREE Memory like it does today unless Apple have a software bug in the system memory reporting tool. Nor do we see a OS crash here - it is just that it doesn't use all of the 8GB and slows down.

I have no way of saying for sure what crap lies in the Apple firmware and that it is not buggy as I don't even have the machine or firmware code for that matter - all I am saying is that if OSX is seeing all 8GB and marks it as FREE in the activity monitor screenshots , it is very unlikely that the firmware is not reporting 8GB - it is likely that it reports 8Gb but either a) OSX chooses not to use it due to some software limits built in the kernel build on the MBP OR b) Firmware marks 4 GB as reserved or unusable - very unlikely in my experience.

REAL question here is what 64-bit Linux and 64-bit Vista report - if they use all 8G - there is no firmware issue there. If they cannot then at least Linux boot logs will shed a lot more light on WHY the 4Gb is not usable. Until then it is all vague talk.
 
REAL question here is what 64-bit Linux and 64-bit Vista report - if they use all 8G - there is no firmware issue there. If they cannot then at least Linux boot logs will shed a lot more light on WHY the 4Gb is not usable. Until then it is all vague talk.

Would Boot Camp allow Vista 64 to run without these limitations? (i.e., Boot Camp doesn't use the EFI?)
 
Would Boot Camp allow Vista 64 to run without these limitations? (i.e., Boot Camp doesn't use the EFI?)

Boot Camp is nothing but a compatibility BIOS shim which is implemented on top of EFI - it emulates the BIOS and talks to EFI to get the real things done. So I would not be surprised if any bug in the firmware applied equally to Vista and OSX.

More over, there are EFI capable Linux kernels that can be tried - gosh I just should have had the machine and the RAM to test it myself :)
 
So you're saying "maybe, but not definitely"? If so, then I won't bother to install Vista 64 on my MBP.

Does your machine have 8GB RAM though? if there is a bug it is with 8GB RAM - and I am suspecting there is no firmware bug but a OS limit which prevents all 8GB from being used - that will be clarified if some one with 8GB MBP boots Vista 64-bit and reports how much it was able to use.
 
Right now it has 6 gb. My other 4 gb stick is collecting dust because it caused such a drag on my system when it was 8 gb.

I think it would still be worthwhile to try putting in the 8GB and boot preferably a 64-bit Linux Live CD - download the iso from here - it is just 158Mb - burn it to CD and boot it. No need to install or change your disk - if you are willing, I can tell you what info to post - it will tell us what is going on. Of course I am not responsible if it eats your machine but that hasn't happened so far - as I understand you've already tried 8Gb RAM without any problem to the machine itself, right? :)
 
I think it would still be worthwhile to try putting in the 8GB and boot preferably a 64-bit Linux Live CD - download the iso from here - it is just 158Mb - burn it to CD and boot it.

I have it, but it has "amd64" in its name. Will this run on my Intel MBP?

No need to install or change your disk - if you are willing, I can tell you what info to post - it will tell us what is going on. Of course I am not responsible if it eats your machine but that hasn't happened so far

Sure, what the hell. I have my MBP Time Machined, so the worst would be a reinstall.

as I understand you've already tried 8Gb RAM without any problem to the machine itself, right? :)

Right. Boots fine with 8 gb, apps run fine. But when I breach the 4 gb of used RAM everything comes to a crawl. Shut down, pop out one of the 4 gb SO-DIMMs and replace it with a 2 gb stick (to 6 gb total) everything runs just peachy, even after consuming >4 gb of RAM.

Maybe you can go ahead and post what I should expect to see at boot up with the CD, and what I need to do to test that 8 gb. Hopefully, it'll be just a few lines? I have a lot of other things to do tonight.
 
OK, my MBP is busy for about another 45 min, then I'll give it a try. I assume I do the same as always - restart the Mac while holding the option key and wait for the debian CD to show up as a boot option?
It'll show up as "Windows" on a disc but it is Debian.
 
OK, I've booted from the CD, but it's wanting me to install. Here are the four menu items:

Install
Graphical install
Advanced options (submenu)
Help

I really don't want to install anything unless I can do it to an external drive. Can I just boot into a shell or something from the CD?
 
OK, my MBP is busy for about another 45 min, then I'll give it a try. I assume I do the same as always - restart the Mac while holding the option key and wait for the debian CD to show up as a boot option?

Yep - just press C as usual or hold Alt - either way is fine. If you attach network cable before booting that will be great - you can copy the files we are going to generate over the network.

Just to make sure - you don't need to install any thing - just let the CD boot completely then press Fn+Ctrl+Alt+F2 and hit enter. (Try Ctrl+alt+F1 also if that doesn't work) - it will drop you to a console.

Enter these commands -

dmesg -s 100000 > /tmp/dm.out #press enter
cat /proc/meminfo > /tmp/meminfo.out #press enter
cat /proc/mtrr > /tmp/mtrr.out #press enter
free -m > /tmp/free.out

Then go to the directory and FTP out all the files above -
cd /tmp
ftp hostname
mput *.out

Or if you don't want to go thru all of the above - just note the output of the free -m command above and if you can, also note the following command's output and post it here - dmesg -s 100000 |grep e820 .

Thanks and sorry if I was unnecessarily verbose above - I wasn't sure of how much familiar you are with Linux.
 
OK, I've booted from the CD, but it's wanting me to install. Here are the four menu items:

Install
Graphical install
Advanced options (submenu)
Help

I really don't want to install anything unless I can do it to an external drive. Can I just boot into a shell or something from the CD?

Yep - no need to install anything - it will not automatically install even if you select install here. So just select Install option above and follow the directions from my previous thread posted a minute ago!
 
What is the "alt" key on my MBP?

I'm at a blue and white text screen and I'm asked to input a language (it's on English now). Is this where I press the key combination?

And I have an ethernet cable connected.

Just select English and hit enter. After that press the Fn + Ctrl+Alt+F2 - Alt key is the Option key on the MBP. That should drop you to a console (It will say something like Press Enter to activate this console - just press enter here and it will drop you to a command line.) If it stays on the blue screen - first try various F keys Fn+Ctrl+Alt+F3/F4 etc. and if it still no workie then try Ctrl+Alt+F3 - dropping Fn.

After that you have to run the commands in my earlier post.
 
When I type this one I get the following message on the terminal:

BusyBox v.1.10.2 (Debian 1:1.10.2-2) multi-call binary

Usage: free


Is this supposed to happen?

Just omit the -m switch - i.e just type free > /tmp/free.out and see then see what is in the file by typing -

cat /tmp/free.out
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.