Subject: Re: benefits for using sparc64 rather than sparc
To: Eduardo Horvath <eeh@netbsd.org>
From: None <segv@netctl.net>
List: port-sparc64
Date: 02/15/2006 21:10:04
On Wed, 15 Feb 2006 21:05:29 +0000 (UTC)
Eduardo Horvath <eeh@mail.netbsd.org> wrote:

> 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

What about supplying '-mcpu=ultrasparc' flags to gcc? It should compile 32-bit
binaries, but with UltraSparc extensions. There are problems with X sources in
NetBSD's source tree when building 32-bit sparc port with '-mcpu=ultrasparc',
but '-mcpu=v9' seems to work.

Also, why sunffb drivers are not built for sparc port? This means no support
for Creator framebuffers.