[wplug] Compiler questions
Dave Neuer
mr_fred_smoothie at yahoo.com
Wed Feb 2 13:56:10 EST 2005
First things first, full disclosure: I'm a diehard
Gentoo user, with a few reservations. I'm also a
software developer, and even a Linux contributor, so I
may not be what one would describe as an "average
user."
Now to respond:
--- Jonathan S Billings <billings at negate.org> wrote:
> Bill Moran wrote:
> > 4) Generally, source becomes available prior to
> binary packages, so
> > you can (usually) stay more up to date by
> compiling your own than
> > by waiting for someone to roll binary packages.
> > 7) Of course, there's compiler optimizations.
>
> My opinion and experience lead me to think that of
> all these reasons,
> most users only take advantage of 4 and 7, and let
> the OS do the
> automatic build and install of new software
> packages.
I agree wholeheartedly with this statement. However, I
don't think that that erases the value of compiling
from source; as Bill pointed out, there are
applications that will see _significant_ performance
improvements from being compiled to the native
platform.
And as Bill pointed out, different processors even
within the same processor familiy may have different
characteristics: MMX, SSE, 3DNow, different cache
sizes, etc.
A good example: the Pentium-M processors in many
recent laptops are NOT P4's; they are architecturally
PIII's with special powersaving features, and thus
should be compiled with -march="pentium-m" or
-march="pentium-3." GCC is very good at optimizing for
different specific architectures -- AnandTech has some
actual statistics for the Pentium-M w/ different
-march settings for both GCC and Intel's compiler. I
have noticed, _subjectively_, better performance from
my Gentoo systems than I ever experienced using binary
distros. Of course, if performance is less of a
priority for you than testing and support (both of
which are still very good on some source-based
distros), than maybe staying with a binary distro
makes sense.
>
> I'd also like to point out that source-based distros
> do not scale well
> at all, and can introduce strange problems into
> maintaining the
> infrastructure.
The area where I've noticed this most is that you
still need to have active, attentive maintainers
(Gentoo, for instance, uses a custom build/package
management system called Portage, and they apply a lot
of bugfix and security patches -- both their own, and
from other distros, particularly Mandrake). Audio apps
on Gentoo in particular seem to lag behind the
official upstream versions -- because it take a while
for someone to create a .ebuild (Portage's version of
a Makefile, sort of; actually more of a meta-Makefile)
for many of them. The adventurous user can always take
it upon themselves to create them, but that entails
learning YABF, which is a PITA.
On the whole, I'd say source based distros are fine
for people who
a) value performance more than most other
characteristics; and
b) don't mind occasionally getting their hands dirty,
filing bug reports, and/or contacting the maintainers.
And yes, Virginia, compiler options do make a
difference, and source-based distros are the easiest
way to apply those system-wide.
Dave
More information about the wplug
mailing list