Are hardware vendors starting to bail on FreeBSD ... ?

Ted Mittelstaedt tedm at toybox.placo.com
Thu Jul 27 05:13:58 UTC 2006


----- Original Message ----- 
From: "Greg Barniskis" <nalists at scls.lib.wi.us>
To: "Ted Mittelstaedt" <tedm at toybox.placo.com>
Cc: <jerrymc at clunix.cl.msu.edu>; <danial_thom at yahoo.com>;
<freebsd-questions at freebsd.org>; "Nick Withers" <nick at nickwithers.com>
Sent: Monday, July 24, 2006 11:59 AM
Subject: Re: Are hardware vendors starting to bail on FreeBSD ... ?


> Ted Mittelstaedt wrote:
> > ----- Original Message ----- 
> > From: "Danial Thom" <danial_thom at yahoo.com>
> > To: "Greg Barniskis" <nalists at scls.lib.wi.us>; "Nick Withers"
> > <nick at nickwithers.com>
> > Cc: <jerrymc at clunix.cl.msu.edu>; <danial_thom at yahoo.com>;
> > <freebsd-questions at freebsd.org>
> > Sent: Thursday, July 13, 2006 11:10 AM
> > Subject: Re: Are hardware vendors starting to bail on FreeBSD ... ?
> >
> >
> >> Burying your head in the sand is a common method
> >> used by stupid people that have no answer to the
> >> truth. I don't blame you; you guys don't want
> >> your employers to know that you've wasted man
> >> 1000s of their dollars because you don't know the
> >> performance characteristics of the hardware
> >> you've recommended. It must be thoroughly
> >> embarrassing.
> [snip]
>
> > I do agree with Danial that most USERS on this list are
> > burying their heads in the sand on this issue.  But I will
> > point out that there isn't really any reason they shouldn't
> > be.  What the market wants is features, not speed.  And
> > that is what the FreeBSD developers are working on.
>
> Features over speed is generally the right equation, yes.
>
> But I think you're being too generous to Danial. The quote of his
> above was in direct response to my assertion that many people refuse
> to listen to him because he frequently engages in cheap demagogy[1].
>

He does, but he is also right on this performance point.  The truth
can always be wrapped more palatably, but I think one of the differences
between a system administrator and a user is that a user can't deal with
the truth unless it's spoon fed in the nursery, an administrator should
be approaching it as a professional, which means ignoring the
irrelevant cheap demagogery and ignoring their own preconceptions of
how things are "supposed" to work, and paying attention to the kernels of
truth.

I have to sort through giant piles of horseshit every time I look at the
latest Cisco sales and marketing dreck, to find out what might be
important in one of their new products, this isn't any different.  And
frankly I find the saccherine cloying marketingspeak to be far more
disgusting and offensive then the lame kindergarden flames that
Danial has so far been able to come up with.

> His response? Another whole boatload of cheap demagogy, questioning
> the intelligence, aptitude and moral character of anyone who doesn't
> listen to him, by way of accusations that are wholly unsupported by
> facts. I could probably rest my case right there, but I think his
> perception (and yours) that people are not receptive to claims of
> FreeBSD performance problems is quite simply false.
>
> Every time a performance question is brought up, I see a flurry of
> calls for clarification and for the formulation of repeatable tests
> which are generally agreed to be an accurate gauge of the problem.

Calling for testing is pretty much a way of excusing the claim.  People
including Danial, have done the testing in the past, posted the results,
then had armchair quarterbacks pick apart the test methodology claiming
the tests were done wrong, thus irrelevant.  So why even bother doing
it anymore.

But, you asked for it, you got it:

Machine #1:  Compaq 1600R, FBSD 6.1  Pentium 3 550Mhz

freebsd-cvs# dmesg
Copyright (c) 1992-2006 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD 6.1-RELEASE #0: Thu Jun  1 17:23:18 PDT 2006
    tedm at freebsd-cvs.ipinc.net:/usr/src/sys/i386/compile/GENERICNOUSBNOFIRE
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Pentium III/Pentium III Xeon/Celeron (548.54-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0x673  Stepping = 3

Features=0x383fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,
CMOV,PAT,PSE36,MMX,FXSR,SSE>
real memory  = 671088640 (640 MB)
avail memory = 647458816 (617 MB)
MPTable: <COMPAQ   PROLIANT    >
ioapic0: Changing APIC ID to 8
ioapic0: Assuming intbase of 0
ioapic0 <Version 1.1> irqs 0-34 on motherboard
kbd1 at kbdmux0
cpu0 on motherboard
pcib0: <MPTable Host-PCI bridge> pcibus 0 on motherboard
pci0: <PCI bus> on pcib0
pci0: <display, VGA> at device 11.0 (no driver attached)
pcib1: <MPTable PCI-PCI bridge> at device 13.0 on pci0
pci1: <PCI bus> on pcib1
tl0: <Compaq Netelligent 10/100 Proliant> port 0x3800-0x380f irq 30 at
device 7.0 on pci1
miibus0: <MII bus> on tl0
nsphy0: <DP83840 10/100 media interface> on miibus0
nsphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
tlphy0: <ThunderLAN 10baseT media interface> on miibus0
tlphy0:  10base2/BNC, 10base5/AUI
tl0: Ethernet address: 00:50:8b:f1:82:17
sym0: <875> port 0x3000-0x30ff mem
0xc6ffdf00-0xc6ffdfff,0xc6fff000-0xc6ffffff irq 23 at device 9.0 on pci1
sym0: No NVRAM, ID 7, Fast-20, SE, parity checking
sym0: [GIANT-LOCKED]
sym1: <875> port 0x3400-0x34ff mem
0xc6ffde00-0xc6ffdeff,0xc6ffe000-0xc6ffefff irq 22 at device 9.1 on pci1
sym1: No NVRAM, ID 7, Fast-20, SE, parity checking
sym1: [GIANT-LOCKED]
pci0: <base peripheral> at device 14.0 (no driver attached)
ida0: <Compaq Smart Array 431 controller> port 0x2000-0x20ff mem
0xc6efe000-0xc6efefff irq 20 at device 16.0 on pci0
ida0: [GIANT-LOCKED]
ida0: drives=1 firm_rev=1.22
idad0: <Compaq Logical Drive> on ida0
idad0: 34719MB (71106240 sectors), blocksize=512
pci0: <serial bus, USB> at device 18.0 (no driver attached)
isab0: <PCI-ISA bridge> at device 20.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel PIIX4 UDMA33 controller> port
0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xf100-0xf10f at device 20.1 on pci0
ata0: <ATA channel 0> on atapci0
ata1: <ATA channel 1> on atapci0
pci0: <serial bus, USB> at device 20.2 (no driver attached)
pci0: <bridge> at device 20.3 (no driver attached)
eisa0: <EISA bus> on motherboard
mainboard0: <CPQ0689 (System Board)> on eisa0 slot 0
pmtimer0 on isa0
orm0: <ISA Option ROMs> at iomem
0xc0000-0xc7fff,0xc8000-0xcbfff,0xe8000-0xedfff,0xee000-0xeffff on isa0
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
kbd0 at atkbd0
atkbd0: [GIANT-LOCKED]
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: [GIANT-LOCKED]
psm0: model Generic PS/2 mouse, device ID 0
fdc0: <Enhanced floppy controller> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on
isa0
fdc0: [FAST]
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
ppc0: <Parallel port> at port 0x3bc-0x3c3 irq 7 on isa0
ppc0: Generic chipset (NIBBLE-only) in COMPATIBLE mode
ppbus0: <Parallel port bus> on ppc0
plip0: <PLIP network interface> on ppbus0
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
ppi0: <Parallel I/O> on ppbus0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
Timecounter "TSC" frequency 548543576 Hz quality 800
Timecounters tick every 1.000 msec
Waiting 5 seconds for SCSI devices to settle
acd0: CDROM <COMPAQ CDR-8435/0013> at ata0-master PIO4
sa0 at sym1 bus 0 target 6 lun 0
sa0: <COMPAQ SDX-400C 3.0B> Removable Sequential Access SCSI-2 device
sa0: 40.000MB/s transfers (20.000MHz, offset 7, 16bit)
Trying to mount root from ufs:/dev/idad0s1a
ipfw2 (+ipv6) initialized, divert loadable, rule-based forwarding disabled,
default to deny, logging disabled
tl0: link state changed to UP
freebsd-cvs#
freebsd-cvs# pwd
/root
freebsd-cvs# bonnie
File './Bonnie.81888', size: 104857600
Writing with putc()...done
Rewriting...done
Writing intelligently...done
Reading with getc()...done
Reading intelligently...done
Seeker 1...Seeker 2...Seeker 3...start 'em...done...done...done...
              -------Sequential Output-------- ---Sequential
Input-- --Random--
              -Per Char- --Block--- -Rewrite-- -Per
Char- --Block--- --Seeks---
Machine    MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU  /sec
%CPU
          100  7745 39.4  7748 12.0  8808 15.3 23303 98.3 151922 99.1
12579.6 99.1
freebsd-cvs#

Machine #2:  Compaq 1600R, FBSD 4.11  Pentium 3 550Mhz

billmax# dmesg
Copyright (c) 1992-2005 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD 4.11-RELEASE #0: Mon Nov 14 11:25:24 PST 2005
    tedm at billmax.ipinc.net:/usr/src/sys/compile/BILLMAX
Timecounter "i8254"  frequency 1193182 Hz
CPU: Pentium II/Pentium II Xeon/Celeron (448.95-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0x652  Stepping = 2

Features=0x183fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,
CMOV,PAT,PSE36,MMX,FXSR>
real memory  = 536870912 (524288K bytes)
avail memory = 518692864 (506536K bytes)
Changing APIC ID for IO APIC #0 from 0 to 8 on chip
Programming 35 pins in IOAPIC #0
IOAPIC #0 intpin 2 -> irq 0
FreeBSD/SMP: Multiprocessor motherboard: 2 CPUs
 cpu0 (BSP): apic id:  1, version: 0x00040011, at 0xfee00000
 cpu1 (AP):  apic id:  0, version: 0x00040011, at 0xfee00000
 io0 (APIC): apic id:  8, version: 0x00220011, at 0xfec00000
Preloaded elf kernel "kernel" at 0xc039c000.
Pentium Pro MTRR support enabled
md0: Malloc disk
npx0: <math processor> on motherboard
npx0: INT 16 interface
pcib0: <Intel 82443BX host to PCI bridge (AGP disabled)> on motherboard
pci0: <PCI bus> on pcib0
pci0: <Cirrus Logic GD5446 SVGA controller> at 11.0
pcib1: <DEC 21150 PCI-PCI bridge> at device 13.0 on pci0
pci1: <PCI bus> on pcib1
tl0: <Compaq Netelligent 10/100 Proliant> port 0x2800-0x280f mem
0xc6ef9df0-0xc6ef9dff irq 9 at device 7.0 on pci1
tl0: Ethernet address: 00:08:c7:9f:92:77
miibus0: <MII bus> on tl0
nsphy0: <DP83840 10/100 media interface> on miibus0
nsphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
tlphy0: <ThunderLAN 10baseT media interface> on miibus0
tlphy0:  10base2/BNC, 10base5/AUI
sym0: <875> port 0x2000-0x20ff mem
0xc6efb000-0xc6efbfff,0xc6ef9f00-0xc6ef9fff irq 10 at device 9.0 on pci1
sym0: No NVRAM, ID 7, Fast-20, SE, parity checking
sym1: <875> port 0x2400-0x24ff mem
0xc6efa000-0xc6efafff,0xc6ef9e00-0xc6ef9eff irq 11 at device 9.1 on pci1
sym1: No NVRAM, ID 7, Fast-20, SE, parity checking
pci1: <Matrox MGA Millennium 2064W graphics accelerator> at 13.0 irq 5
pci0: <unknown card> (vendor=0x0e11, dev=0xa0f0) at 14.0
pcib2: <IBM 82351 PCI-PCI bridge> at device 18.0 on pci0
pci2: <PCI bus> on pcib2
ida0: <Compaq SMART-2SL array controller> port 0x3000-0x30ff mem
0xb8000000-0xbfffffff,0xc6ffff00-0xc6ffffff irq 15 at device 0.0 on pci2
ida0: drives=1 firm_rev=4.44
idad0: <Compaq Logical Drive> on ida0
idad0: 26029MB (53309280 sectors), blocksize=512
isab0: <Intel 82371AB PCI to ISA bridge> at device 20.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel PIIX4 ATA33 controller> port 0xf100-0xf10f at device 20.1 on
pci0
ata0: at 0x1f0 irq 14 on atapci0
ata1: at 0x170 irq 15 on atapci0
uhci0: <Intel 82371AB/EB (PIIX4) USB controller> irq 0 at device 20.2 on
pci0
uhci0: Could not map ports
device_probe_and_attach: uhci0 attach returned 6
piix0: <Intel 82371AB Power management controller> at device 20.3 on pci0
eisa0: <EISA bus> on motherboard
mainboard0: <CPQ0689 (System Board)> on eisa0 slot 0
orm0: <Option ROMs> at iomem
0xc0000-0xc7fff,0xc8000-0xcbfff,0xe8000-0xedfff,0xee000-0xeffff on isa0
pmtimer0 on isa0
fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
kbd0 at atkbd0
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model Generic PS/2 mouse, device ID 0
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
APIC_IO: Testing 8254 interrupt delivery
APIC_IO: routing 8254 via IOAPIC #0 intpin 2
SMP: AP CPU #1 Launched!
acd0: CDROM <CD-ROM CDU701-Q> at ata0-master PIO4
Waiting 15 seconds for SCSI devices to settle
sa0 at sym0 bus 0 target 6 lun 0
sa0: <HP C1537A L708> Removable Sequential Access SCSI-2 device
sa0: 10.000MB/s transfers (10.000MHz, offset 16)
Mounting root from ufs:/dev/idad0s1a
IP packet filtering initialized, divert disabled, rule-based forwarding
enabled, default to deny, logging disabled
(sa0:sym0:0:6:0): WRITE FILEMARKS. CDB: 10 0 0 0 2 0
(sa0:sym0:0:6:0): Deferred Error: MEDIUM ERROR asc:3b,0
(sa0:sym0:0:6:0): Sequential positioning error
billmax#
billmax# bonnie
File './Bonnie.12377', size: 104857600
Writing with putc()...done
Rewriting...done
Writing intelligently...done
Reading with getc()...done
Reading intelligently...done
Seeker 1...Seeker 2...Seeker 3...start 'em...done...done...done...
              -------Sequential Output-------- ---Sequential
Input-- --Random--
              -Per Char- --Block--- -Rewrite-- -Per
Char- --Block--- --Seeks---
Machine    MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU  /sec
%CPU
          100  6191 27.7  6202  8.6  7269 13.6 14247 100.0 122401 99.8
12267.0 199.0
billmax#

Notice on the FASTER machine, running FreeBSD 6.1, it runs CPU at 39.4
percent.  The SLOWER
machine, running FreeBSD 4.11, runs CPU at 27%.  Granted, disk I/O is a bit
faster on the newer version
of FreeBSD.  But of course, it should be - the disk driver and OS is newer.
The dirty little secret is that
while you might get that higher throughput speed on the disk, it takes a LOT
higher CPU percentage,
EVEN ON a machine that's 100Mhz faster.

Sure, if you got gigahertz to play with - so what?  But, this matters a
great deal on older hardware
where you DON'T got that.

Now, granted this is nothing more than seat of the pants testing, it isn't a
controlled test.
But it is very typical of the results that people get when they try
performance testing.

> People with performance problems then /sometimes/ get upset (I think
> because the questioning and testing tends to assume they're wrong
> and they get defensive about it).
>
> The problem is, scientific testing of an assertion must try to prove
> the hypothesis is false, and must posit (and also try to disprove)
> any plausible alternative explanations.

Now, right there your in conflict.  In one paragraph you say that
questioning and testing assumes the hypothesis -is- false.  In another
paragraph you say that questioning of the hypothesis is supposed to
try to prove it's false.

The true scientific questioning is not going to make any assumptions.
If I'm going to question a hypothesis I'm going to start
by assuming nothing.  I will start assuming that there's equal chance
the hypothesis is right or wrong.  I'll formulate my line of questioning,
if I discover while questioning that it's false, then I'm done.  If not,
then
I will have only succeeded in disproving one of the plausible alternative
explanations,
but I will otherwise still be right where I started from - with no proof
either way that the hypothesis is correct.


> When the OP
> of a problem gets emotional about it and starts spouting cheap
> demagogy, then other users and developers quickly will walk away
> from the table.
>

Then they are stupid, frankly, if they have not checked it out for
themselves, or looked up where someone else might have checked it
out.

> Walking away from trollery is in no way equivalent to these users
> and developers sticking their heads in the sand on the issue. It's
> the predictable response of critical thinkers who recognize demagogy
> as a tool of /antitruth/.

It's the lazy man's way out.  I don't like you so I'm not going to listen
to you.  The Catholic Church did the same with Galileo.

Your problem, here, is that your looking at the rest of the world through
your own rose-colored glasses that define normalcy.  To you, non-emotional
discussion is the only kind of discussion acceptable to you merely
because you were raised in a culture that taught you that.  Your
basically holding everyone else up in the world against your cultural
yardstick.  If they don't mesure up, they must be full-o-sheet.

One man's demagogury is another man's reason.

> Those who consistently use demagogy are
> always more interested in winning an argument than in finding the
> truth, and any critical thinker either sees right through the murk
> of BS being tossed at them or least has enough intuitive sense to
> recoil from it.
>

The problem though is that you cannot know if someone is really a
demagoge or not unless you check out the authenticity of their
statements.  Simply labeling them a demagogue without checking
them out, because they drag in what you consider to be emotional
appeals or unrelated facts, is being intellectually lazy.

It is just like the "Laura Bush murdered her boyfriend" story.  To
this day there are lots and lots of people that still do not believe
that the US President's wife actually killed someone, simply because
when the topic comes up it is usually a arch liberal that brings it
up, and they believe it to be the ravings of a demagogue.

> And that is /the only reason/ why people ignore Danial. His brand of
> cheap demagogy is so potent that the smell of /antitruth/ emanates
> from his posts in a field so strong that it might as well be a
> physically repelling force. He might do better in politics or
> religion where these trollish "debating" tactics are the norm. But
> in a community of critical thinkers, the "truthiness" of demagogy
> will rarely find any traction at all.
>

Except that since he's right on the performance thing, what you
just said - that he's a cheap demagogue, is nothing more than
a big, fat emotional statement that when in the context of this
performance debate, is a lie.  By making a claim that he would do better
in politics, that is also an emotional statement, and no better
than a trollish debating tactic.  Your also making an us-vs-them
argument with this community of critical thinkers stuff.

Ted



More information about the freebsd-questions mailing list