In response to Ivan Voras <[EMAIL PROTECTED]>: > Bill Moran wrote: > > > Does this test demonstrate usage of memory over 4G? It's my > understanding > > that PAE starts to suffer when it has to look at the memory over 4G > (which > > is the problem it's intended to solve) > > > > If your entire test fits in under 4G, you're not seeing the worst of it. > > At least, that's my understanding of the issue. > > I don't think that's how PAE works. AFAIK, it adds all the memory pages > it can find (including those above and below 4 GB) into the VM pool with > 64-bit addresses, so all of them can be used by the applications in an > uniform way. Kind of like swap works.
I'm no expert, so I did a little research: http://en.wikipedia.org/wiki/Physical_Address_Extension (of course, everyone knows that Wikipedia is the ultimate source of information and is infallible, right?) Anyway, based on that article, I would assume the performance hit comes from the fact that access to memory has to pass through three layers of pointers on PAE systems. Which means every time you access RAM, you have an extra lookup to find the address of the memory you want (compared to ia32) However, amd64 uses the same extra table: http://en.wikipedia.org/wiki/Amd64#Virtual_address_space_details so I'm unsure how amd64 manages to avoid the performance issue, if that is indeed the reason for it. PAE is still a 32 bit architecture. This means that somehow the operating system has to translate 32bit pointers in the application into 64 bit pointers for actual memory access. The Wikipedia article doesn't explain how this is done, but it's possible (likely?) that this is a reason for decreased performance as well. -- Bill Moran http://www.potentialtech.com _______________________________________________ firstname.lastname@example.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "[EMAIL PROTECTED]"