[MLton] x86_64 port status

Adam Goode adam@evdebs.org
Mon, 08 May 2006 08:11:29 -0400


This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--------------enig8AB8D25F882CA1265A67F01F
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

Henry Cejtin wrote:
> I know that it can run both 32 and 64 bit applications, and of course s=
ome
> apps are going to only work in 32-bitmode (because they depend on it). =
 I was
> just curious if the distributions tended to re-compile everything for 6=
4
> bits or just run most things in 32 bit mode.

I think I see what you are asking.

With some 64-bit architectures that started off with 32-bit
implementations (like PPC64, Sparc, and maybe MIPS), there is no
performance benefit to recompiling to 64-bit. In general, these
architectures don't offer anything new to 64-bit programs, they only
increase the amount of directly-accessible memory without adding other
functionality. Of course this doubles the size of pointers which often
leads to slower code in pointer-heavy operations.

At least for PPC64, Linux distributions I have seen ship a 64-bit kernel
but stick with mostly 32-bit applications. Why pay the large-pointer
penalty?


With x86_64, AMD decided to remove a lot of old x86 baggage as well as
double the number of registers available, so most distributions feel
that recompiling everything to use 64-bit is worth it for simplicity and
performance reasons. You still have larger pointers, but the hope is
that the other benefits of x86_64 make it an overall win.



Thanks,

Adam


--------------enig8AB8D25F882CA1265A67F01F
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org

iD8DBQFEXzV0lenB4PQRJawRAsMoAJ9ZtJ5hn5ODj/nwMoourR/0GKPW3wCfdf5M
2lqzYov1B26Oz8nXze6KQLo=
=p2J0
-----END PGP SIGNATURE-----

--------------enig8AB8D25F882CA1265A67F01F--