[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: CFP (Call for Participation) Debian PPC64

On Tue, 2003-11-11 at 15:37, Peter Bergner wrote:
> Kevin B.Hendricks wrote:
> > One question, why do 32 bit apps run faster than 64 bit apps, is it all 
> > of the memory accesses needed to load 64 bit immediate and other data 
> > when restricted to 32 bit instruction lengths?
> Yes, on powerpc64-linux, it takes 5 instructions to load a 64-bit
> immediate and/or address.

That's in the fully general case, assuming you
don't do it with ONE instruction via a load
involving the GOT or some such.

Typically sign-extension or zero-extension will
cut that down.

>   On powerpc-linux, it takes only 2.
> This makes for a better icache footprint.  The powerpc64-linux
> ABI also defines a TOC which also adds a little overhead.  This is
> the reason 32-bit executables are the default on ppc64 systems.

It sounds like a reason to get a new ABI. There's
no reason we have to blindly follow OS/400.

Starting a new port with a bad ABI is not the
most forward-looking thing to be doing.

> On Opteron, 32-bit executables have the same icache footprint benefit
> compared 64-bit executables.  However, on Opteron, unlike ppc64, 64-bit
> executables have access to twice the number of registers that 32-bit
> executables have access too.  On a register starved arch like x86,
> access to twice the number of regs is a huge win.

There's no architectural reason preventing the
use of all of the Opteron's 64-bit registers
with an ILP32 programming model.

SGI did this for MIPS.

The same goes for PowerPC. You wouldn't gain
as much, but a faster "long long" is nice.

Reply to: