posted by Tony Bourke on Wed 31st Mar 2004 19:38 UTC

"FreeBSD 5.2.1 SPARC64, Page 3/3"
FreeBSD 5.1 Performance Worse

Interestingly enough, these results are an improvement over FreeBSD 5.1. Before I started these evaluations, I had installed FreeBSD 5.1 a few months ago when 5.1 was the most recent release.

I did a quick write test using dd, and wrote out a 100 MB file. For FreeBSD 5.2.1, the results were pretty much the same with the same test done in Solaris at roughly 10 MB/s.

104857600 bytes transferred in 10.957025 secs (9569897 bytes/sec)
In FreeBSD 5.1, the results were much worse, at 2 MB/s.
104857600 bytes transferred in 50.845939 secs (2062261 bytes/sec)

FreeBSD 5.1 versus 5.2.1

FreeBSD 5.1 versus 5.2.1, cont

I did see a note about major ata work in the release notes for 5.2 and 5.2.1, but I'm not sure what the exact issue was for 5.1, or what the current issue is for 5.2.1. So while there is still an issue with 5.2.1, it looks like they've worked out something even worse in 5.1.

Software

The default system comes with a wide variety of binaries pre-installed including Perl and tcsh, and anything not installed can easily added via the ports system. There wasn't an app that I came up against that I didn't compile and install cleanly, including apache, htdig, and OpenSSL.

Conclusion

I was very pleasantly surprised by FreeBSD on SPARC, and I'm surprised more people don't use it on their UltraSPARC systems. When people think non-Solaris SPARC operating systems, many tend to think of Linux, but as long as you're not using it for a desktop (and your system is an UltraSPARC), FreeBSD 5.2.1 makes a very complete, useful, and flexible server.

Given my experience with the last 64-bit-only operating system NetBSD, the 64-bit only nature of FreeBSD gave me pause. However, it wasn't an issue for any of the software I tried. A combination of good application configure support, good ports maintenance, plentiful pre-compiled binaries, and GCC 3.3.3 contribued to this. FreeBSD didn't exhibit any of the problems

My only reservation was the extraordinarily long result for MySQL's insert, which even with MySQL.com's binary suffered from performance degradation compared to other operating systems on the same hardware. Still, if you're just using it as a development system, or non-disk intensive system, then that may not be a major factor to you.

It is FreeBSD, and it is true to it's Tier 1 claim, in that it works and feels talmost the same on SPARC as it does on x86 (with the exception of the performance problem). If you're looking for an alternative operating system to run on an Ultra 5, then FreeBSD is definitely worth a look, especially if you're comfortable and familiar with FreeBSD.

Appendix: dmesg

Copyright (c) 1992-2004 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 5.2.1-RELEASE #0: Tue Feb 24 07:47:33 GMT 2004
    root@bobbi.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC
Preloaded elf kernel "/boot/kernel/kernel" at 0xc0452000.
Timecounter "tick" frequency 333000000 Hz quality 0
real memory  = 268435456 (256 MB)
avail memory = 245907456 (234 MB)
cpu0: Sun Microsystems UltraSparc-IIi Processor (333.00 MHz CPU)
nexus0: 
pcib0:  on nexus0
pcib0: Sabre, impl 0, version 0, ign 0x7c0, bus A
pcib0: [FAST]
pcib0: [FAST]
DVMA map: 0xc0000000 to 0xc3ffffff
pci0:  on pcib0
pcib1:  at device 1.1 on pci0
pci1:  on pcib1
ebus0: revision 0x01
ebus0:  mem 0xf1000000-0xf17fffff,0xf0000000-0xf0ffffff at device 1.0 on pci1
ebus0:  addr 0x140072f000-0x140072f003,0x140072c000-0x140072c003,0x140072a000-0x140072a003,
0x1400728000-0x1400728003,0x1400726000-0x1400726003 (no driver attached)
ebus0:  addr 0x1400724000-0x1400724003 irq 37 (no driver attached)
ebus0:  addr 0x1400504000-0x1400504002 (no driver attached)
sab0:  addr 0x1400400000-0x140040007f irq 43 on ebus0
sab0: [FAST]
sabtty0:  on sab0
sabtty0: console 9600,8,n,1,-
sabtty1:  on sab0
ebus0:  addr 0x14003083f8-0x14003083ff irq 41 (no driver attached)
ebus0:  addr 0x14003062f8-0x14003062ff irq 42 (no driver attached)
ebus0:  addr 0x1400700000-0x140070000f,
0x140030015c-0x140030015d,0x14003043bc-0x14003043cb irq 34 (no driver attached)
ebus0:  addr 0x1400720000-0x1400720003,0x1400706000-0x140070600f,
0x14003023f0-0x14003023f7 irq 39 (no driver attached)
eeprom0:  addr 0x1400000000-0x1400001fff on ebus0
eeprom0: model mk48t59
eeprom0: hostid 80a829a6
ebus0:  addr 0x1000000000-0x10000fffff (no driver attached)
ebus0:  addr 0x1400722000-0x1400722003,0x1400704000-0x140070400f,0x1400702000-0x140070200f,
0x1400200000-0x14002000ff irq 36,35 (no driver attached)
hme0:  mem 0xe0000000-0xe0007fff at device 1.1 on pci1
hme0: Ethernet address: 08:00:20:a8:29:a6
miibus0:  on hme0
nsphy0:  on miibus0
nsphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
pci1:  at device 2.0 (no driver attached)
atapci0:  port 0xc00020-0xc0002f,0xc00018-0xc0001b,
0xc00010-0xc00017,0xc00008-0xc0000b,0xc00000-0xc00007 at device 3.0 on pci1
atapci0: [MPSAFE]
ata2: at 0xc00000 on atapci0
ata2: [MPSAFE]
ata3: at 0xc00010 on atapci0
ata3: [MPSAFE]
pcib2:  at device 1.0 on pci0
pci2:  on pcib2
fxp0:  port 0x400-0x43f mem 0x100000-0x1fffff,0x2000-0x2fff at device 3.0 on pci2
fxp0: Ethernet address 00:90:27:c2:88:5e
miibus1:  on fxp0
inphy0:  on miibus1
inphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
Timecounters tick every 10.000 msec
GEOM: create disk ad0 dp=0xfffff800008726a0
ad0: 8693MB  [17662/16/63] at ata2-master WDMA2
acd0: CDRW  at ata3-master PIO4
Mounting root from ufs:/dev/ad0a

If you would like to see your thoughts or experiences with technology published, please consider writing an article for OSNews.
Table of contents
  1. "FreeBSD 5.2.1 SPARC64, Page 1/3"
  2. "FreeBSD 5.2.1 SPARC64, Page 2/3"
  3. "FreeBSD 5.2.1 SPARC64, Page 3/3"
e p (0)    28 Comment(s)

Technology White Papers

See More