# mtrr and >4gb ram

## bcward

I just rebuilt gentoo and upgraded to 8gb of ram while I had the system down.  As I was installing I ran across this page http://www.gentoo.org/doc/en/nvidia-guide.xml which seems to indicate that I have a problem on my hands.

 *Quote:*   

> Getting 2D to work on machines with 4Gb or more memory
> 
> If you are having troubles with the nVidia 2D acceleration it is likely that you are unable to set up a write-combining range with MTRR. To verify, check the contents of /proc/mtrr:
> 
> Code Listing 4.1: Checking if you have write-combining enabled
> ...

 

my output looks like this:

```
bcw006@Conroe ~ $ cat /proc/mtrr

reg00: base=0x80000000 (2048MB), size=2048MB: uncachable, count=1

reg01: base=0x00000000 (   0MB), size=8192MB: write-back, count=1

reg02: base=0x200000000 (8192MB), size=2048MB: write-back, count=1
```

Trouble is that I can't seem to find that option in my bios.  The only thing I found in my ram that sounded remotely similar was something called memory remapping.  I enabled that, and the bios only recognized 7gb of ram, so I don't think that is what I want.

I have an asus p5b mobo from late 2006.  Is there a possibility that a bios upgrade might have an upgrade such as this?  Or am I just overlooking something?

----------

## eccerr0r

yes, usually MTRRs are set up in BIOS.  Do different versions of BIOS have the same issue?

Memory remapping must be on I think.

Your MTRR configs look weird, but I can't really say much else other than that... (other than that they overlap badly)

----------

## bcward

I think I may have mis-spoken when I said I turned memory remapping on and got only 7 gb, that I believe was the result of turning it off.  Now with it back on I have all 8gb.  I guess I should also mention that I am running gentoo x86_64.

I would have to do some more extensive searching to find any information about other bios revisions.  Is there anything I can do on the software side of things?

What does a weird MTRR config actually mean?

----------

## EzInKy

mtrr=memory type range register-here is a wiki about it. Basically it boils down to how devices are mapped into memory space. You want your bios to map them above your physical ram.

----------

## -<silver>-

I have a similar problem.

I use 32bit 2.6.24-gentoo-r4 with highmem 64gb support compiled into the kernel.

#cat /proc/mtrr

```
reg00: base=0x00000000 (   0MB), size=4096MB: write-back, count=1

reg01: base=0xe0000000 (3584MB), size= 512MB: uncachable, count=1

reg02: base=0xd0000000 (3328MB), size= 256MB: uncachable, count=1

reg03: base=0x100000000 (4096MB), size=1024MB: write-back, count=1

reg04: base=0x130000000 (4864MB), size= 256MB: uncachable, count=1

reg05: base=0xcff00000 (3327MB), size=   1MB: uncachable, count=1

```

So I think i cannot use my whole 4GB of RAM, do I ?

With regard to the upper post and the nvidia guide, there should be a problem between my RAM and my graphical RAM (512MB).

I also cannot find a mtrr option in my Bios, which is very unsatisfied. I've got a Gigabyte GA-P35C-DS3R with Bios F10 released on 04.01.2008.

But my whole RAM works on Vista 64bit.

I would be very happy, if someone could help me.

----------

## Mad Merlin

 *-<silver>- wrote:*   

> I use 32bit 2.6.24-gentoo-r4 with highmem 64gb support compiled into the kernel.
> 
> (...)
> 
> But my whole RAM works on Vista 64bit.

 

Is there any reason you're not using 64-bit Gentoo too?

----------

## -<silver>-

yes, because of flash and other software related problems.

----------

## LoSeR_5150

when you say because of flash, does that mean you are opposed to using nspluginwrapper for 32bit flash in a 64bit browser?  Also what else is holding you back from 64bit?  Icedtea Java now has a usable java plugin for 64bit.  I've been running 64bit since 2004 and they only complaints I've had was no flash and no 64bit java plugin.  Its just that using Himem really causes a performance hit.  Just a thought as re-installing for 64bit is not always a feasible thing to do.

----------

## -<silver>-

Yes, I didn't want to use wrappers. But sure, using highmem really isn't better, too. It's easier to build and use a x64 Linux than using a 64bit Win with worse 64bit supported 3rd party software. I worried about the fact, I had to install a 64bit Win because of RAM > 4GB and that's why I was happy about the highmem option under Linux. So maybe I really have to change to x64. But anyhow, does anybody know an answer to my question?

----------

## Section_8

I have a motherboard similar to <silver> (Gigabyte P35-DS3R) with F11 bios, but with an AMD64 system and 4G ram.  My /proc/mtrr is the same:

```
reg00: base=0x00000000 (   0MB), size=4096MB: write-back, count=1

reg01: base=0xe0000000 (3584MB), size= 512MB: uncachable, count=1

reg02: base=0xd0000000 (3328MB), size= 256MB: uncachable, count=1

reg03: base=0x100000000 (4096MB), size=1024MB: write-back, count=1

reg04: base=0x130000000 (4864MB), size= 256MB: uncachable, count=1

reg05: base=0xcff00000 (3327MB), size=   1MB: uncachable, count=1

```

I also can't find anything in the bios setup related to memory mapping.  I've been running AMD64 for about 4 months, and haven't noticed any more flash problems using firefox with nspluginwrapper, than I was having with a 32-bit x86 system.

----------

## -<silver>-

Did I understand you right, you have a 64bit System and still this /proc/mtrr output???

That's curious. I think I read somewhere, that the output of /proc/mtrr could be faulty in some certain cases. Does anybody know more about this behaviour?

gkrellm shows 4051MB RAM in my case but I don't know how to check the addressing of RAM and graphics RAM elsewhere.

----------

## Section_8

Yes, it is 64-bit:

```
$ uname -a

Linux officepc 2.6.24-gentoo-r4 #1 SMP Fri Apr 4 18:29:21 CDT 2008 x86_64 Intel(R) Core(TM)2 Duo CPU E6750 @ 2.66GHz GenuineIntel GNU/Linux

```

----------

