Subject: Re: benefits for using sparc64 rather than sparc
To: Joel CARNAT <joel@carnat.net>
From: Eduardo Horvath <eeh@netbsd.org>
List: port-sparc64
Date: 02/15/2006 21:05:29
On Wed, 15 Feb 2006, Joel CARNAT wrote:
> What I was wondering then is : is there any (real) benefits on running the
> sparc64 port (rather than the sparc one) on the Ultra machines /sparc64
> supports ?
The big difference between /sparc and /sparc64 is that /sparc generally
runs the SPARC V7 instruction set whereas sparc64 uses the SPARC V9
instruction set. The V7 instruction set does not have hardware multiply
or divide (to use that you need V8 which is not the default for NetBSD
builds). The V9 instruction set has hardware multiply and divide along
with branch prediction, conditional moves, and nonfaulting loads. Also,
gcc usually uses single-scalar for V7 or double-scalar scheduling for
SuperSPARC code generation, UltraSPARC is scheduled at least 4-way
superscalar.
So, although you end up with a slightly larger cache footprint for 64-bit
code it will usually run faster than 32-bit code, often a lot faster.
Eduardo