2010-11-06 19:34:23

by Nico

[permalink] [raw]
Subject: AGP Aperture question






Hi,

I just assembled a new machine here based on an MSI 770-C45 mobo with an Phenom II X4 955 CPU. Everything is running flawlessly (on 2.6.36), after fiddling a bit with my old disks, but today after going through the dmesg, I noticed the following which got me curious and would also like to know if I should worry about it or of it has any bad impact on something...

Checking aperture...
No AGP bridge found
Node 0: aperture @ 20000000 size 32 MB
Aperture pointing to e820 RAM. Ignoring.
Your BIOS doesn't leave a aperture memory hole
Please enable the IOMMU option in the BIOS setup
This costs you 64 MB of RAM
Mapping aperture over 65536 KB of RAM @ 20000000


and later on in dmesg, I see the following...

PCI-DMA: Disabling AGP.
PCI-DMA: aperture base @ 20000000 size 65536 KB
PCI-DMA: using GART IOMMU.
PCI-DMA: Reserving 64MB of IOMMU area in the AGP aperture

I looked in my BIOS settings but couldn't find anything about Aperture or IOMMU. There's no such option at all in there. So, is the above something to be concerned about? Does it have any negative impact on the system?

Please CC me as I'm not subbed to the list :)

Thanks
-


2010-11-08 12:13:49

by Clemens Ladisch

[permalink] [raw]
Subject: Re: AGP Aperture question

Nico wrote:
> Your BIOS doesn't leave a aperture memory hole
> Please enable the IOMMU option in the BIOS setup
> This costs you 64 MB of RAM

This message is a little bit too optimistic. I don't know of any
motherboard not specifically designed for Linux that has such an option
or that just silently reserves address space for the IOMMU.

> So, is the above something to be concerned about? Does it have any
> negative impact on the system?

There are three options for using the GART as an IOMMU:
1) Put the GART into some free address space below 4 GB.
2) Put the GART over some memory below 4 GB.
3) Don't use the GART.

The first one would be optimal, but requires that there is some free
address space below 4 GB. The third one makes the computer slower
because any DMA from/to memory above the 4 GB limit requires copying
buffers to/from low memory.

Option 2) wastes 64 MB of memory, compared to 1), but is very much
superior to 3).

(AFAIK Windows uses 3), and this is why no BIOS bothers to set this.)


Regards,
Clemens