Motherboards with memory remapping for 64bit OSes

delizseemack

Junior Member
Jun 25, 2007
4
0
0
Hello,

I'm looking for a list of mainstream motherboards that supports some kind of memory remapping features for 64bits OSes so that memory mapped to devices like the graphic card from the 4gig point is remapped higher or not totally lost. If you don't know what I'm talking about, you might want to refer to http://www.codinghorror.com/blog/archives/000811.html and http://support.microsoft.com/kb/929605/en-us .

Specifically, I'm planning on building my next computer with the P5K Deluxe motherboard from Asus and I'm wondering if that motherboard has a memory remapping option.

Thanks
 

postmortemIA

Diamond Member
Jul 11, 2006
7,721
40
91
I remember booting to XP x64 and seeing all 4GB.. intel DP35DP P35 board here with 4GB RAM.
 

delizseemack

Junior Member
Jun 25, 2007
4
0
0
Thanks for that information postmortemIA,

I'm still wondering if someone has a list of mainstream motherboards that supports some kind of memory remapping features.

ASUS P5K Deluxe is also based on the P35 chipset but I would still like a confirmation from someone who has the board or has been using that board.
 

delizseemack

Junior Member
Jun 25, 2007
4
0
0
Originally posted by: VirtualLarry
Don't all modern mobos with support for 4GB or more of RAM support memory remapping?

How can you know for sure ? I've looked through many mainstream motherboards website to find that information in the specifications and I found nothing.

If you read carefully the first link in my references, you can find:

Originally from this link: http://www.codinghorror.com/blog/archives/000811.html
The proper solution to this whole conundrum is to use a 64-bit operating system. However, even with a 64-bit OS, you'll still be at the mercy of your motherboard's chipset and BIOS; make sure your motherboard supports using 4 GB or more of memory, as outlined in this MSKB article. {...} The memory hole for IO still exists in the 64-bit world, but most modern BIOSes allow you to banish the IO memory hole (pdf) to some (for now) ridiculously high limit when you're running a 64-bit OS.

"Most" is not quite as specific as I want.
 

mkjensen

Junior Member
Jul 9, 2007
5
0
0
Originally posted by: postmortemIA
I remember booting to XP x64 and seeing all 4GB.. intel DP35DP P35 board here with 4GB RAM.

Did you change any settings in the BIOS or did it just work?

I'm planning on buying the DP35DP and running Vista 64-bit with 4GB RAM. Unfortunately, I can't find out if the memory hole will always be between 3 and 4GB or if it will be remapped. (Maybe you get 7GB visible with 8GB total and 3GB visible with 4GB total - I want 4GB visible with 4GB total.)
 

Peter

Elite Member
Oct 15, 1999
9,640
1
0
The memory hole grows downward from 4GB, its size depends on how much space your I/O uses. Today's graphics cards take huge bites.

Memory remapping can only work with 64-bit enabled processors, in a 64-bit OS, when the chipset supports it and the BIOS enabled it. (The chipset part is irrelevant with AMD64 processors.)
 

markcohn28

Junior Member
Jul 9, 2007
1
0
0
Peter is wrong about the memory remapping only works on a 64-bit OS. I just built 2 servers with the ASUS P5B-Plus mb with the Q6600 processor with 4 GB of ram with Windows 2003 Standard Server 32 bit version. Only after I enabled memory remapping in the BIOS, then the 32-bit OS could see and use 4 GB instead of only 3 GB before the BIOS change.
 

mkjensen

Junior Member
Jul 9, 2007
5
0
0
Originally posted by: Peter
The memory hole grows downward from 4GB, its size depends on how much space your I/O uses. Today's graphics cards take huge bites.

Yes, but some motherboards/chipsets allow remapping of the "memory hole" so that if the hole is 1GB, then you can still have 4GB visible with 4GB total if the chipset supports more memory (e.g. 8GB with P35). Of course if you install 8GB, you will only see 7GB.
 

aka1nas

Diamond Member
Aug 30, 2001
4,335
1
0
Originally posted by: markcohn28
Peter is wrong about the memory remapping only works on a 64-bit OS. I just built 2 servers with the ASUS P5B-Plus mb with the Q6600 processor with 4 GB of ram with Windows 2003 Standard Server 32 bit version. Only after I enabled memory remapping in the BIOS, then the 32-bit OS could see and use 4 GB instead of only 3 GB before the BIOS change.

Server 2003 is an exception. 32-bit desktop versions of windows won't be able to use all of the 4GB of RAM due to legacy device driver compatibility. There's too many peripherals and other consumer gear with shoddy device drivers that map themselves to that area.
 

Peter

Elite Member
Oct 15, 1999
9,640
1
0
Server 2003 can use Intel's ancient 36-bit crutch, and as such can address more than 4GiB of address space physically, but not logically - individual programs never see more than 4 gigs.

mkjensen, I know how remapping works. Depending on what the chipset supports, you may get your "missing" amount back regardless of how much you have, or only if it's 4GiB total, or only if it isn't the maximum amount one can possibly fit.

aka, devices don't "map themselves" anywhere, this is all under BIOS/OS control. In fact, /all/ devices must be mapped in 32-bit space below 4GiB, else you wouldn't be able to boot an OS at all, not even a 64-bit OS. The vast majority of PCI and PCIE devices doesn't even support being mapped above.

That's what the need for a RAM remapping feature comes from. This is very much like the gap between 640K and 1M - legacy I/O had to be kept below the 1M address limit of the original 8086, even though 80286 machines could address 16M. And yes, there were chipsets which could remap the 'lost' 384K to above 1M.

History repeating ...
 

mkjensen

Junior Member
Jul 9, 2007
5
0
0
Originally posted by: Peter
mkjensen, I know how remapping works. Depending on what the chipset supports, you may get your "missing" amount back regardless of how much you have, or only if it's 4GiB total, or only if it isn't the maximum amount one can possibly fit.

Thanks for the information. It would be nice with a list of chipsets supporting remapping.
 

tcsenter

Lifer
Sep 7, 2001
18,802
472
126
Originally posted by: Peter
Server 2003 can use Intel's ancient 36-bit crutch, and as such can address more than 4GiB of address space physically, but not logically - individual programs never see more than 4 gigs.
This perplexes me as Microsoft repeatedly lists 4GiB as the max physical memory for 32-bit Server 2003 Standard Edition. Only the 32-bit Enterprise and Datacenter Editions support 36-bit PAE for larger physical address space, according to Microsoft docs, technet, and KB articles.
 

Peter

Elite Member
Oct 15, 1999
9,640
1
0
Well, the fact that you can't have 4GiB RAM in 4GiB total address space should be quite obvious, no?

In 32-bit space (4GiB total), the theoretical absolute maximum RAM you can have is 3.98 real GiB, because even with the most minimal set of peripherals, system devices start at $FEC0_0000. On a PCI Express board, system I/O reaches as low as $E000_0000 (3.5GiB) depending on the chipset.

As I said above, more is consumed as you keep adding peripherals. Graphics cards and AGP aperture are the largest I/O resources known to man, so it's quite easy to get a workstation machine down to less than 3 GiB of space available to RAM. Lowest I've seen so far was 2.3 GiB.
 

NoobyDoo

Senior member
Nov 13, 2006
463
0
71
This is what I posted in the Memory section ATF Link :

Check out this : Ask Dan: What's with the 3Gb memory barrier? .

Apparently, using between 3GB and 4GB of memory isn't very smart - irrespective of whether you use XP or Vista, or whether you use 32-bit or 64-bit versions of Windows.

That is, use 3GB or less, or use more than 4GB (for a 64-bit version).

That's what I understood, anyway. Correct me if I'm wrong.
 

aka1nas

Diamond Member
Aug 30, 2001
4,335
1
0
Originally posted by: NoobyDoo
This is what I posted in the Memory section ATF Link :

Check out this : Ask Dan: What's with the 3Gb memory barrier? .

Apparently, using between 3GB and 4GB of memory isn't very smart - irrespective of whether you use XP or Vista, or whether you use 32-bit or 64-bit versions of Windows.

That is, use 3GB or less, or use more than 4GB (for a 64-bit version).

That's what I understood, anyway. Correct me if I'm wrong.

You misunderstood the part about 64-bit OSes. He mentions that BIOS memory remapping is the workaround that allows you to use all 4GB on a 64-bit OS. Which brings us back to the OP's question. :D
 

Peter

Elite Member
Oct 15, 1999
9,640
1
0
Dan's article is pretty long winded, and a bit inaccurate when it comes to the modern machines - if you're reading it with a BIOS engineer's eyes ;)

Anyhow, memory-remapping chipsets (or CPUs in case of an AMD64) not only cut the below-4G RAM mapping off to make room for the I/O, they can bring the "lost" amount back into view above the 4G threshold. You get your 4G of RAM, minus the 384K that are "lost" to the original 640K-1M hole for legacy I/O, and with another hole below the 4G threshold.

But up there, it's only visible to 64-bit enabled processors running a 64-bit OS. (Or the 36-bit crutch in earlier server OSes.)
 

NoobyDoo

Senior member
Nov 13, 2006
463
0
71
I was thinking of upgrading to Vista 64-bit and 4x1GB memory. That's when I started reading about the "3.2 GB" problem. Only ended up more confused.

Can some one confirm if it is really possible to use all 4GB with 64-bit Vista. Is someone here at ATF actually doing it ? Specifically, using the P35 chipset. Thanks.
 

Arcanedeath

Platinum Member
Jan 29, 2000
2,822
1
76
The P5k Deluxe has a memory remaping option in the bios Version 311, not sure of the other newer ones 304 has the option as well, it does work w/ 64 bit Vista and displays all 4 gigs, in XP Pro w/ the same settings I only get 3.25 Gig. Hope this helps...
 

tcsenter

Lifer
Sep 7, 2001
18,802
472
126
Originally posted by: NoobyDoo
Can some one confirm if it is really possible to use all 4GB with 64-bit Vista. Is someone here at ATF actually doing it ? Specifically, using the P35 chipset. Thanks.
You can use all 4GB with 64-bit Vista on the ASUS P5K line of motherboards, possibly minus around 100MB or so that may not be reclaimed due to particularities in the memory remapping algorithm (some cases have been reported). No worries there.

A bigger concern is that driver or application glitches are still fairly common these days because a number of developers haven't fully debugged their stuff with 64-bit environments, particularly developers of consumer apps or hardware. e.g. '[insert device here] works with memory remapping disabled but not with memory remapping enabled' is not an uncommon complaint with audio/sound devices, TV tuners, video capture devices, and others.
 

postmortemIA

Diamond Member
Jul 11, 2006
7,721
40
91
Originally posted by: Peter
Server 2003 can use Intel's ancient 36-bit crutch, and as such can address more than 4GiB of address space physically, but not logically - individual programs never see more than 4 gigs.

Individual programs cannot see or address more than 2GB, which is common limitation.
 

postmortemIA

Diamond Member
Jul 11, 2006
7,721
40
91
Originally posted by: mkjensen
Originally posted by: postmortemIA
I remember booting to XP x64 and seeing all 4GB.. intel DP35DP P35 board here with 4GB RAM.

Did you change any settings in the BIOS or did it just work?

I'm planning on buying the DP35DP and running Vista 64-bit with 4GB RAM. Unfortunately, I can't find out if the memory hole will always be between 3 and 4GB or if it will be remapped. (Maybe you get 7GB visible with 8GB total and 3GB visible with 4GB total - I want 4GB visible with 4GB total.)

It just worked.
 

Peter

Elite Member
Oct 15, 1999
9,640
1
0
Originally posted by: tcsenterA bigger concern is that driver or application glitches are still fairly common these days because a number of developers haven't fully debugged their stuff with 64-bit environments, particularly developers of consumer apps or hardware. e.g. '[insert device here] works with memory remapping disabled but not with memory remapping enabled' is not an uncommon complaint with audio/sound devices, TV tuners, video capture devices, and others.

These are more like, "stops working as soon as there is memory above the 4G threshold". Whether that's because you have 4G and remapping, or 8G, doesn't make a difference.

Why is that? It's the same programming mistake mostly, DMA setup. If the PCI device you're programming for is limited to 32-bit addressing (the VAST majority is!), you better request your DMA buffer to be in 32-bit space, else weird stuff is going to happen.
Of course, getting that request tag correct was totally irrelevant when people didn't have RAM that high up.

Again, history repeating ... we've had the exact same struggle back when PCs suddenly had more than 16MB of RAM, and thus went beyond the DMA addressable space for ISA cards.

Message to driver writers: Keep your buffers where your device can reach them!
 

VirtualLarry

No Lifer
Aug 25, 2001
56,570
10,202
126
Originally posted by: tcsenter
A bigger concern is that driver or application glitches are still fairly common these days because a number of developers haven't fully debugged their stuff with 64-bit environments, particularly developers of consumer apps or hardware. e.g. '[insert device here] works with memory remapping disabled but not with memory remapping enabled' is not an uncommon complaint with audio/sound devices, TV tuners, video capture devices, and others.
Yes, that's a very unfortunate situation, and likely more problems of that nature are going to crop up as we all transition from 32-bit to 64-bit systems and OSes.