Saturday, August 26, 2006

Cheap(ish) Linux Box

At work, I specced and put together a few Linux boxen (heh!) to use as workstations. I've already got three of them working pretty well, so I thought it'd be good to share the specs in case you're thinking of getting one yourself.

The requirement, initially, was to get a machine capable of running Fedora Core 5, which would mostly be used as a display station for our radar system. The display software is written in Java (and hence needs a beefy CPU+memory, with lots of L2 cache), and a 19" LCD would be nice to do the display on. Oh, and it has to be cheap!

Being an AMD fanboy, I decided to go with an Opteron CPU. 64-bit Linux is available in all distros now (yes, even Debian!), so the CPU's capabilities are not going to go waste. Most of the radar data processing suite can take advantage of the 64-bit CPU as well. Plus, Xeons are still too expensive, and the AMD64 architecture provides a larger memory bandwidth (which DSP software desperately needs). My choice of CPU is the Opteron 165, a dual-core unit with 1 MB of cache per core. I felt this is important because the Java virtual machine (used by the radar display software) would then mostly fit into the cache and hence run a bit faster. Most Athlon64 CPUs only have 512 kB of L2 cache, but there are exceptions. Opty 165s are capable overclockers, too, should I need the additional horsepower. I also went with the boxed retail version, since it comes with a very beefy heatsink, and the price delta between the retail and OEM+extra heatsink is not very high. Boxed CPUs also have a 3-year warranty.

I did think about the socket-AM2 CPUs, but I also wondered how many times I've actually upgraded the CPU on a comp without changing anything else... zero! So that argument goes down the drain. Also, they (and the motherboards + DDR2 memory) are more expensive than their socket-939 bretheren, which use DDR-400 memory. Linux support for some socket-AM2 mobos is also limited.

The motherboard I picked is the Asus A8N-VM CSM. On a microATX with GeForce 6150 integrated video, this mobo is one of the few that has a DVI socket onboard! It has a gigabit LAN port (supported by the forcedeth driver), which performs well with our network. I've yet to try jumbo frame support, though. A few points to watch out for on this board:
  1. X seems flaky when using the default video drivers for Linux. It helps to do the first boot in text mode (by adding a "3" to the second line from the boot sequence in grub), download and install the video driver, then do an "init 5" to go back to graphic mode. Installing the video driver in Fedora Core 5 requires three steps: first, at a root prompt, type rpm -ivh and then yum -y install kmod-nvidia . Finally, type nvidia-config-display enable and you should be done.
  2. The BIOS needs to be updated to something at or above release 1003, this fixes a bunch of problems that otherwise require a ton of kernel boot-time options to fix. Most new boards have the update, so it should be OK.
  3. Occasionally, the mouse pointer would turn invisible (but the mouse still works), the fix is to, as root, open the X config file /etc/X11/xorg.conf. Locate the "Device" section and add the line Option "HWCursor" "off" This is a bug in the nVidia video driver, and will be fixed in their next release.
  4. The DVI port only supports digital output, you can't use an adaptor to connect a second analog monitor.
  5. If you want to use all four memory slots, be sure to buy at least two single-sided sticks (this is a known issue).
  6. There is a version called the A8N-VM CSM NBP, which currently does not work well with Linux. It doesn't have any additional features except for DRM-chip support (and who wants that, anyway!) Be careful when ordering.
For memory, I used a 2x512MB combo pack from Patriot. This isn't critical, I would recommend searching for a good deal before buying. The Patriot memory just happened to be on sale when I bought it. Look for single-sided memory, due to the limitation mentioned above.

Video is built-in, and is good enough for use as a workstation. Gamers can add an additional video card into the PCI-Express 16-lane slot for better performance.

For the case, I picked the cheap and cheerful Rosewill R604. It has an ambitious toolless optical drive mounting system, but it makes the drives sit too far in, so I removed the plastic brackets and mounted the drives with screws. Given this is on a tight budget, the choice of case is justified. For $40, you can't go wrong (and this includes a 400W power supply!) If you're looking for a better case, though, one that would make several heads turn is the gorgeous Lian Li PC-V800A. <drools>

The hard disk is a Seagate Barracuda ST3250820AS 250GB SATA unit, fairly capable, and with enough disk space for most uses (the radar data currently goes onto a 2 TB RAID). 250GB is the current sweet-spot for GB/$, so unless you want to save about $10, stay with this drive.

I used a BenQ DVD Writer, again, this isn't critical and I picked this because it was on special and came with a free BenQ slim keyboard. Other recommendations include the LG GSA-H10B, which supports DVD-RAM media as well (until recently, NewEgg shipped a free DVD-RAM disk with the drive... the first time you use a DVD-RAM, you'll get hooked!)

I'm very picky about mice, so I chose one I'm comfy with: the Logitech MX-310. X can be configured to take advantage of the extra buttons, which then work as forward/back in Firefox, etc.

The monitor is a Samsung 930B 19" LCD. This may not have been the best buy, since for $10 more, you can get the Samsung 940BX, which features a height adjustable stand (I'm currently using an old phone book... heh!) Anyway, it has a DVI port, and that's what mattered. Cheaper LCDs generally only have an analog input, which is poorer quality than the all-digital DVI system.

Anyway, the system works flawlessly as a radar display and as a general workstation for day-to-day tasks. I was so happy with it that we got another for use at Pawnee and a third one to replace an aging Sun Ultra-10. The latter two have an Athlon64 4000+ CPU instead of the Opty 165, but still perform well. The Asus motherboard, aside from the initial hiccups, works like a charm, highly recommended for Linux users.


Grafxgurl said...

*backs out slowly*...maybe i should leave you two alone.


wow! i BET you were GREAT at making lego stuff!!!

Jim said...

Haw haw, very funny :/

Didn't have much lego, but I used to borrow my friends' sets (and "lose" half the pieces in the process... heh heh!)