[OpenAFS-devel] Re: IPv6 support

Jeffrey Hutzelman jhutz@cmu.edu
Tue, 15 Feb 2011 22:59:23 -0500


--On Monday, February 14, 2011 11:58:16 AM -0600 Andrew Deason 
<adeason@sinenomine.net> wrote:

> We only build 32-bit binaries on Solaris, but it's being worked on. I
> think there's a discussion to be had about how the user specifies this,
> though... it's not optimal to just use 64-bit binaries everywhere you
> can.

On SPARC, there is virtually no advantage to building 64-bit versions of 
most binaries, and some significant drawbacks in terms of code size and 
memory footprint.  There may be a handful of places in OpenAFS where this 
makes a difference, but then again, there may not be.

Note that SPARC Solaris itself is mostly 32-bit binaries; generally, 64-bit 
binaries are included only for specific cases where it makes a performance 
difference, where it is necessary to have binaries which match the kernel, 
or where it is desirable to make a 64-bit version of a library available 
for use by user code.

On x86, the situation is rather different.  Even code which does not 
particularly benefit from 64-bit pointer and integer types may benefit 
substantially from the much larger number of registers available to the 
compiler when targeting 64-bit x86.  And, the variable size of x86 
instructions means that the code size hit is not quite as bad (it's still 
there, of course, as is the memory footprint).

I'm not sure offhand whether 64-bit x86 Solaris is primarily 32-bit or 
64-bit binaries.  Neither choice would surprise me.


> I'm not aware of any other platforms, though. At least, none I've heard
> anyone ask about.

Of course, we do build native 64-bit binaries on Linux, have done so for 
many years, and they work just fine.  Note that our first 64-bit port was 
OSF/1 on DEC Alpha more than a decade ago.

-- Jeff