Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Infrared

macrumors 68000
Original poster
Mar 28, 2007
1,716
65
On a PC you don't generally have access to all your RAM.
You might have 4GB in your machine, but only be able to
access and use 3.5GB.

This is not a Windows problem specifically. Rather, it has
more to do with motherboards and BIOS implementations.

So that's Windows machines. But how about your Mac Pro?
You probably have a pretty good idea how much RAM it has
inside, but how many of those installed gigabytes can you
actually use?

Cheers!
 
Are you asking us or telling us?

There have been some chipset/addressability issues in some of the early Core chipsets limiting to 3GB... and certainly on ancient 8086 variants there was difficulty addressing more than 640k. I don't recognise your assertation that .5GB chunks of memory mysteriously disappears in any current 4G systems though... do you have any references?

I have 6GB in my Mac Pro, and I'm pretty certain that it's all addressable and usable.
 
Are you asking us or telling us?

Several question marks, so I guess I would be asking :)

There have been some chipset/addressability issues in some of the early Core chipsets limiting to 3GB... and certainly on ancient 8086 variants there was difficulty addressing more than 640k. I don't recognise your assertation that .5GB chunks of memory mysteriously disappears in any current 4G systems though... do you have any references?

I have 6GB in my Mac Pro, and I'm pretty certain that it's all addressable and usable.

http://www.codinghorror.com/blog/archives/000811.html

and

http://support.microsoft.com/kb/929605/en-us

The bit that is critical for Mac Pro/OS X users is this:

"The BIOS must support the memory remapping feature."

In which substitute EFI for BIOS.
 
On a PC you don't generally have access to all your RAM.
You might have 4GB in your machine, but only be able to
access and use 3.5GB.

This is not a Windows problem specifically. Rather, it has
more to do with motherboards and BIOS implementations.

So that's Windows machines. But how about your Mac Pro?
You probably have a pretty good idea how much RAM it has
inside, but how many of those installed gigabytes can you
actually use?

Cheers!

The system only seeing 3.5 gigs is a limitation to the OS. 32 bit operating systems can only address the 3.5. Leopard being a 64 bit OS it can address larger amounts in full.
 
The system only seeing 3.5 gigs is a limitation to the OS. 32 bit operating systems can only address the 3.5. Leopard being a 64 bit OS it can address larger amounts in full.

I hope you are right. That's what I used to think,
too. However, increasingly I'm tending toward the
view that it's a motherboard and BIOS (or in our
case EFI) thing.
 
I hope you are right. That's what I used to think,
too. However, increasingly I'm tending toward the
view that it's a motherboard and BIOS (or in our
case EFI) thing.

Why are you tending towards that opinion? Please post some evidence that this is a Mac issue.

So far this is just scaremongering based on a 32bit Vista issue.
 
Why are you tending towards that opinion? Please post some evidence that this is a Mac issue.

So far this is just scaremongering based on a 32bit Vista issue.

Hehe... people sometimes assume that since the all mighty PC can't do it, the Mac also can't do it... it makes me laugh. I know for a fact that my Mac Pro uses ALL 5GB of RAM, I can watch it be used in Activity Monitor.
 
It is a limitation of 32bit memory addressing. It can only address 4gb total at any given time. There are motherboards where a setting has to be flipped in the bios for it to address more than ~3gb, but its still a 32bit issue for the most part.

Windows can address 4gb total, but the reason you only see ~3.2-3.5gb is because that 4gb also includes memory reserved for pci-e devices and also video memory.. meaning if you have 4gb ram and a 512mb video card, you're going to lose half a gig of ram because of the video card.

In windows you need to set the /PAE flag in your boot.ini file so it uses physical address extensions, otherwise it wont see over 2gb or 3gb? (cant remember exactly). What this does is use a memory page table in active ram so that when it needs to use ram above what it has in its view at the moment, it pages out the addresses to the list so that it can reference them again... so the more ram you have (would only make a difference in a server), the more of a performance hit its going to take.. it works, but its a hack. Thats why 64bit is so much better. It can address a hell of alot more ram than 32bit. I cant remember the number, but its more ram than anyone is going to have in a computer for quite a long time
 
I hope you are right. That's what I used to think,
too. However, increasingly I'm tending toward the
view that it's a motherboard and BIOS (or in our
case EFI) thing.

32 bit applications can see 4 GB of virtual address space, whether they are running on a 32 or 64 bit operating system. 64 bit applications can see basically unlimited virtual address space.

The motherboard and BIOS determine how much real address space the operating system can see, and how much memory can be plugged in. Mac Pro's are limited to 64 GB RAM. New Core2 Duo Macs are limited to 4 GB RAM, but real address space is bigger, so that the OS can see the video card etc. without losing address space for RAM. Older Core2 Duo Macs are limited to 4 GB RAM _and_ 4 GB real address space, so less than the 4 GB are visible to the OS because some address space is needed for other hardware than RAM. Core Duo machines have lower limits (3 GB RAM or 2 GB RAM) and can only run a 32 bit operating system and 32 bit applications.

So all MacPro's can have much more than 4 GB RAM, all new Macs can have 4 GB RAM installed and can see and use all of that RAM.
 
Most of Leopard is 64bit so that's good. Also, I don't run 1 32bit App that uses all of my RAM... I usually run like 6 apps that each use their own slice of my RAM and that gets used up sometimes.
 
The system only seeing 3.5 gigs is a limitation to the OS. 32 bit operating systems can only address the 3.5. Leopard being a 64 bit OS it can address larger amounts in full.

Tiger was already able to use more than 4 GB in a system, but it could only run 32 bit applications. You can have a MacPro with 16 GB of RAM and Tiger; if you run four RAM eating application monsters that each use the full 4 GB they can use, this machine will run all four applications without any pageins or pageouts.
 
I have 16GB of RAM. After Effects uses it all which is all I care about, as that's where my paychecks are coming from. That's still only 2GB per core though.
 
Tiger was already able to use more than 4 GB in a system, but it could only run 32 bit applications.

Actually that is not true. It can run 64bit processes as long as they do no have a GUI. Therefore you can bolt a 32bit GUI on top of a 64bit base application and effectively have a 64bit application running on Tiger.
 
32 bit XP can use only 2GB unless you use the /3GB switch

64 bit XP, and I presume Vista, can use a lot more memory than that.

From what I've read on the subject from M$ support articles, a standard configuration of 32 bit XP can only address 2GB for any process. The total ram it will recognize may be only 4GB. I'm not sure about the latter.

There is the /3GB switch you can use so 32 bit XP can use that much ram for a process.
 
4 GB installed in Mac Pro '08

Mac OS X Leopard sees all 4 GB

Win XP Pro 32 bits SP3 sees only 2 GB
Vista Ultimate 32 bits sees only 2 GB
Vista Ultimate 32 bits SP1 sees all 4 GB
Vista Ultimate 64 bits sees all 4 GB
Vista Ultimate 64 bits SP1 sees all 4 GB.

Haven't tried Ubuntu yet... will be doing shortly.
 
Well, it seems I was wrong about my Vista installation.
It does now appear to allow the use of all 4GB of RAM:

memorystuff.PNG

Sorry about that :)

I think what confused me is that memory availability is
reported in different ways in different places by the OS,
and that reporting changed with SP1.
 
Prior to SP1, Vista would only report what was available. So people would go to the System Info screen and scream because it only showed 3.5GB of the 4GB they just installed.

SP1 for Vista changed that. Now the system information screen will show the total memory installed in the system. However, going into Task Manager, you will see the actual usage.

Now, this is with a real PC, not running on a Mac. I thought there are still issues with running XP or Vista on a Mac....something to do with the BIOS emulator or something.

Anyway, my Dad found out the hard way. He had a Vista 32-bit machine at home with 2GB. When my Mom got her MacBook, I put 4GB in it.....she uses iPhoto a lot. So, he went out and bought 4GB more RAM. Technically his motherboard supports it, as the BIOS states at bootup. And he looked at the System Info screen in Vista SP1 after installing it saw the 6GB being reported and was a happy camper. Wasn't until I told him to go the the task manager and sure enough, only about 3.58GB was being used.

Plain an simple, 32-bit Vista or XP will only see this much.

I think it's wrong how Microsoft changed the way the sys info screen shows the installed RAM in the system. They could at least qualify it with the fact that you an put in as much as your motherboard will take, but Vista 32-bit will only use 3.5GB.

My MacBook is happily running and seeing 4GB. My Mac Pro is chugging away with 11GB.

-Kevin
 
4 GB installed in Mac Pro '08

Mac OS X Leopard sees all 4 GB

Win XP Pro 32 bits SP3 sees only 2 GB
Vista Ultimate 32 bits sees only 2 GB
Vista Ultimate 32 bits SP1 sees all 4 GB
Vista Ultimate 64 bits sees all 4 GB
Vista Ultimate 64 bits SP1 sees all 4 GB.

Haven't tried Ubuntu yet... will be doing shortly.

on XP, open your c:\boot.ini file (its hidden i believe..its been a while) and add /PAE after the line that has all the boot info (disk, etc) and it will see over 2gb
 
mac pro with 10GB baby, why close applications? :) haha

That was my thinking too....aside from the fact that I also use programs like Photoshop and Lightroom constantly :)

I keep a lot of stuff open, but I still manage to have minimum of 2-3 gigs free at any time....

-Bryan
 
Prior to SP1, Vista would only report what was available. So people would go to the System Info screen and scream because it only showed 3.5GB of the 4GB they just installed.

SP1 for Vista changed that. Now the system information screen will show the total memory installed in the system. However, going into Task Manager, you will see the actual usage.

Now, this is with a real PC, not running on a Mac. I thought there are still issues with running XP or Vista on a Mac....something to do with the BIOS emulator or something.

Anyway, my Dad found out the hard way. He had a Vista 32-bit machine at home with 2GB. When my Mom got her MacBook, I put 4GB in it.....she uses iPhoto a lot. So, he went out and bought 4GB more RAM. Technically his motherboard supports it, as the BIOS states at bootup. And he looked at the System Info screen in Vista SP1 after installing it saw the 6GB being reported and was a happy camper. Wasn't until I told him to go the the task manager and sure enough, only about 3.58GB was being used.

Plain an simple, 32-bit Vista or XP will only see this much.

I think it's wrong how Microsoft changed the way the sys info screen shows the installed RAM in the system. They could at least qualify it with the fact that you an put in as much as your motherboard will take, but Vista 32-bit will only use 3.5GB.

The whole thing is pretty confusing!

There's the "System Information" referred to here:

http://www.codinghorror.com/blog/archives/000811.html

But if that's "System Information", what's this then? :)

sysinfo.png

Four of the places where I've found the memory stats.

Code:
([B]1[/B]) "System Information" as at the codinghorror site. 
  Memory (RAM): 4.00 GB
([B]2[/B]) "System Information" as in my screenshot.
  ([B]a[/B]) Installed Physical Memory (RAM) 4.00 GB
  ([B]b[/B]) Total Physical Memory 3.99 GB
  ([B]c[/B]) Available Physical Memory 2.93 GB
([B]3[/B]) "About Windows"
  Physical Memory Available to Windows: 4,183,244 KB
([B]4[/B]) Task Manager
  Physical Memory (MB) Total 4085

Running through this:

1 is the same as 2a. It's the amount of memory physically on the FB-DIMMs before
Windows and the hardware has had a chance to mangle it. 3 sounds a bit like 2c
because the word "available" is used for both. But that's not correct. Rather, 3
is the same as 2b and 4, but that fact is obscured slightly by the use of
different units. The description "Total Physical Memory" isn't helping anyone
here. 3, 2b and 4 refer to the amount of memory available for use before Windows
has booted. It's 4GB minus any "memory holes". Finally, as best as I can make
out, 2c refers to the amount readily available now for processes that want new
pages of memory. Insert a suitable definition of "readily available" :)
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.