[Info-vax] OpenVMS I64 V8.1 "Evaluation Release"?
glen herrmannsfeldt
gah at ugcs.caltech.edu
Wed Mar 21 18:54:37 EDT 2012
Fritz Wuehler <fritz at spamexpire-201203.rodent.frell.theremailer.net> wrote:
> Johnny Billquist <bqt at softjar.se> wrote:
>> My god, I can hardly believe my eyes when I read this.
>> Have none of you the slightest clue about the difference
>> between virtual address and physical address?
> Yeah me and Glenn at least.
>> Even today, there is no CPU that can address 64 bit
>> physical address space.
> I don't think that's true. What about z/Arch? What about POWER?
As far as I know, not. And even if they could, no-one could afford
to buy that much memory. Prices are approaching $1/GB, and 64 bits
addresses 2**34 GB, or about $16 billion. Well, Maybe a few people
could afford it. There might be enough bits in the page tables,
but they don't put all the pins on the chip.
I used to know about the tricks in z/Arch to avoid the overhead
needed for 64 bit addressing.
Both S/370 and VAX (and likely others) have two levels of virtual
address tables. For S/370, it is called segments and pages,
for VAX it is pagable page tables. The reason is to avoid the
really huge tables that you might otherwise need to keep in
real memory. To resolve an address not in the TLB takes two
table look-ups in real memory.
With 64 bits, z/Arch has five levels of tables, but it is a waste
to have to use all five when you don't really need that much.
That is, five table look-ups for a TLB miss. So they use some
tricks to avoid that until the need is there. If done right,
the software should go seamlessly to 64 bit physical when needed,
but there really isn't a reason to do it now.
I believe AMD64 also has something similar.
As I said before, IA32 has a 45 bit virtual address, and 36 bit
physical address, but a 32 bit MMU in between. Some software tricks
could get around that, though. A segment desriptor cache would speed
up segment selector loads, which would be needed if anyone really
wanted to use large model addressing. It seems, though, that with
the appropriate economy of scale it wasn't so hard to go to 64 bits.
The real advantage of 64 bits is that you can tell all your friends
that you have a 64 bit processor (hopefully running a 64 bit OS),
so that you can edit documents with Word, and do presentations
with Powerpoint, just as well as with 32 bits.
There is a slight advantage working with 64 bit data. It is easy
enough to do 64 bit add/subtract in IA64, and, usually with
subroutine calls 64 bit multiply and divide. Still, a little faster.
-- glen
More information about the Info-vax
mailing list