On Fri, 31 Aug 2007, Larry Stewart wrote:

Mark Hahn wrote:

For X86 archtectures, it actually makes a very noticable performance
change (30%?) to use build switches that are appropriate for your
machines, rather than the generic switches chosen by Red Had or


interesting.  30% on what operations?

I should absolutely know not to report a number without a citation.
I was thinking of this report: http://www.linux.com/articles/41348
but it is actually comparing Linux vs other Unixlike OSs.
The Linux happens to be Gentoo, and the comments cite
Gentoo's "unfair advantage" because it is compiled with optimization!

Fair enough, but Mark's surprise is due to the fact that most numerical
applications tend to be rate limited by only a very few things:  CPU
clock and architecture, memory speed and type and interconnect, compiler
quality, program organization.  One therefore would be surprised at a 5%
performance difference for a binary built using the same versions of the
same libraries (built, to be sure, to match the architecture in
questions -- i686 vs i386 binaries might well differ in performance),
although one might not be at all surprised at a larger benefit if one
changed compilers or libraries altogether.  After all, when a task is on
the CPU it is pretty much running as fast as it can run.

So I shouldn't have claimed a performance advantage against other
distributions.  Might be true, but not supported by this study.

For some applications I wouldn't be surprised -- mysql in particular is
almost certainly something that can be significantly improved because of
what it does and because it isn't exactly the cleanest code in the
Universe from what I understand.  Improved caching or buffering,
rearranging a few loops, and the like might make a big difference for
it.  I also don't know exactly what Super Smack does as a benchmark, but
I do know a bit about benchmarking, and one perennial problem with
comparative benchmarking is establishing a uniform system state.
Running it on "a small and easily cached data set" doesn't give me a lot
of confidence that the author will achieve replicable results that
reflect the real world even for mysql, nor am I convinced that the test
run in this way is CPU/OS/memory bound.

I tend to agree with Mark and Gerry's earlier remarks -- most
differences in linux distros these days are ESSENTIALLY window dressing.
apt-get vs yum.  gnome vs kde.  Sure, some run slightly more advanced
kernels, or slightly newer versions of libraries, but for the most part
they share a common code base.  In the context of building a cluster
node, differences are further minimized, as one tends to install just
what you need, which tends to be nonspecialized -- the common code base
that is shared by most programs (and hence most linuces).  Compiling
with the Intel reference compiler, or pathscale, might well make a big
difference relative to compiling with gcc (or not).  Tuning the
application for the cache size and memory architecture might make a
difference.  I wouldn't EXPECT running Debian, or Fedora, or Red Hat, or
Slackware to make a big difference, except insofar as one or another of
them is way ahead or way behind in their basic libraries.  So RHEL when
the libraries are 2+ years old might well be slow compared to Fedora
Core with the latest versions of the basic libraries (although 30% is a
big difference to expect period) but RHEL when it is first released and
its libraries "are" FC really shouldn't be.

  rgb

--
Robert G. Brown                        http://www.phy.duke.edu/~rgb/
Duke University Dept. of Physics, Box 90305
Durham, N.C. 27708-0305
Phone: 1-919-660-2567  Fax: 919-660-2525     email:[EMAIL PROTECTED]


_______________________________________________
Beowulf mailing list, [email protected]
To change your subscription (digest mode or unsubscribe) visit 
http://www.beowulf.org/mailman/listinfo/beowulf

Reply via email to