DragonFly kernel List (threaded) for 2007-06
DragonFly BSD
DragonFly kernel List (threaded) for 2007-06
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: implemented features (Re: Decision time....)


From: Rahul Siddharthan <rsidd@xxxxxxxxx>
Date: 04 Jun 2007 10:46:20 GMT
Keywords:
Summary:

>   From: "km b" <kmb810@gmail.com>
>> On my own code (computational biology), using gcc, 32-bit binaries are
>> 50% slower than 64-bit binaries.  (This is true of both gcc3 and gcc4.
>> In fact, gcc 64-bit binaries are faster than 64-bit binaries generated
>> by the Sun Studio compilers on amd64.)  That sort of speed difference
>> is not trivial for the sort of work I do.
>
>Please back your claims with empirical results. Please don't
>generalize without finding out why 32-bit binaries are 50% slower than
>64-bit binaries.

Where is the generalisation?  I said "my own code", which is what I'm
interested in.  But it also appears to be true of GSL (the GNU
scientific library), at least the parts that I'm interested in.  I
don't think, even if my claim was made "generally", it would be at all
controversial.  Floating-point performance is much better in 64-bit
mode, and there are twice as many general-purpose registers available.

In fact it is a tragedy that nearly all 64-bit computers out there
still run 32-bit Windows.  As a result you see benchmarks claiming
that the new Xeons cream the current AMD Opterons; but these are all
32-bit benchmarks, and say little about 64-bit performance.  For my
code (and some of my colleagues say the same), in 64-bit mode, the
Opterons still seem ahead.

>Have you measured against pure 32-bit environment vs
>pur 64-bit environment or just executing 32-bit binaries under 64-bit
>environment. Have you measured the effect on the cache in different
>environments (if you are using FreeBSD you can do so using PMC).

They are all 64-bit OSs (Linux or Solaris), but a 32-bit binary links
with 32-bit libraries.  I don't see why you think the cache usage
would be worse for a 32-bit binary.

Rahul



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