Cuzco NT Workstations

Robert L. Brown
Spring, 1998

Table of Contents


Introduction

This page describes the standard NT workstation configuration chosen for the engineers in the Cuzco group, and some of the rationale behind the decisions made. The biggest up-front decision was "build or buy". We chose "build" for these reasons:

  1. Complete configuration control. We can precisely configure the systems with the components we want. Ordering packaged brand-name systems does not give us this flexibility. We can precisely vary the components across the team that we want to have variety in, and control those that we do not.
  2. Ease of upgradability. We can upgrade components on an expense basis without voiding a warranty and without synchronizing through a centralized provider. For example, we can upgrade RAM or graphics cards, or disk systems through a quick trip to a local computer store. Also, when new processors and busses become available, we will not need to replace the entire system.
  3. Ease of localized support. The majority of hardware problems are with commodity items and are easy to diagnose. For example, CD-ROM drives are notorious failure points. Most of these are easy to diagnose and can be fixed within 30 minutes after picking up a replacement part.
  4. Lower up-front cost. Though questionable how valuable this is, I have found that we can save 20% on buying OEM parts and making our own systems.
  5. Greater knowledge. By having the engineers build their own systems and install the OS and software, they have a better understanding of the system and how to keep it running. In Mountain View, support, especially NT support, is pretty thin. We all need to be smart and knowledgeable.

We also recognize that there are several downsides to this decision, notably the following:

  1. No central maintenance source. An obvious risk. Though most problems are easy to diagnose, sometimes problems are not and require a fair bit of time to track down.
  2. Multiple warranties to track. Most of the parts have 1-3 year, or lifetime warranties, all from the manufacturer. We need to keep track of these.
  3. Excessive time to assemble. Screwdriver time is minimal, about one hour. Collecting parts and keeping track of them as they come in adds significantly to the time. I have not added up how much of my time has been taking in tracking down good prices, working with SGI purchasing, handling returns, etc. I'm hoping it will pay off for AW in the long run by virtue of the learning experience.

Configuration Summary

We converged on a configuration that seems to work for us, summarized below. Each item is elaborated on below the list.

Acquisition

I used SGI corporate purchasing for the parts, accessed via the SGI Electronic Requisition system. This proved to be fairly effective, and dramatically reduced the amount of time I would have to spend on it had I bought all of the components myself.

Three of the systems I bought partially assembled from Aberdeen, Inc's web site. This was pretty much a waste of time. There were several problems with Aberdeen's web site and I spent more time corresponding with someone there than should have been necessary. Though they gave me an extra 2% discount for my trouble, the experience was unsatisfying. To top it off, after promising to accelerate the systems through their manufacturing, they didn't, and it took three weeks anyway.

Most of the parts finally came from Central Computer in Santa Clara. Some parts came from other vendors, depending on how Purchasing wanted to do it.

References

Accounting

Generally, the rule at SGI is to expense anything under $1000 and capitalize anything over. However, no single component in these systems costs over $1000 except the graphics card, so they could be nearly all expensed if purchased correctly. If we were only buying one system per quarter, this might be the way to go (we did expense the prototype system, buying it in small pieces and using a consumer graphics card).

The purpose of capitalizing equipment is to report the expense against revenue evenly over 12 quarters. The alternative is to expense everything up front, in the very quarter when the project being started is guaranteed to generate no revenue, resulting in a lousy (looking) quarter! So, the theory is, if we report the depreciation evenly over the lifetime of the equipment, we don't take any single big hit on expenses in any quarter.

Nice theory, but it has problems for (at least) two reasons. First, as mentioned, these system, though about $7000 each, are bought across several purchase reqs and, not being additional to any existing asset, are difficult to track in the capital asset system. Second, the technology obsoletes more quickly than 12 quarters, so we'll probably take an expense write-off hit six to eight quarters down the road.

I'm not sure what to do about the second problem, other than to carry redundant items in the depreciation stream on each system (e.g. old CPUs sitting on the shelf with 3-4 quarters left while new ones are sitting inside the case). I tried to get approval for 8 quarter depreciation cycles, but ran into "Cobol issues."

As for the first problem, I originally asked for the capital asset numbers to be issued up front, allowing me to purchase additions to them. This didn't fly, and instead SGI capital assets created us a special "project code" that I can charge all component purchases to, and the aggregation will enter the assets list as a single capital expenditure (or divided by the total number of systems we assembled). Thus, the roughly $24,000 we're spending this quarter, spread out over about 85 different components, can be reported against revenue gradually and not cause a big "blip" in our books.

How this system holds up over time remains to be seen.

Assembly

Assembly takes just over half an hour if I do it alone, longer if doing it with someone else. The process is roughly this:

  1. Gather all of the parts into one place and have a full table of workspace available.\
  2. Gather the tools needed: a #1 Phillips screwdriver, needle nosed pliers (for jumpers), a 3/16" nut driver, and optionally a 1/4" inch nut driver. Don't use magnetized tools.
  3. Remove the case from the box, place it on the table, and remove the front cover, and side panels. Remove the box of hardware. Lay is on its side mainboard side down.
  4. Pick the ATX rear panel insert that matches the mainboard - the one with the two DINs, the two USBs, and the COM/LPT connector stack. Remove any punchouts from it as necessary (e.g. USB) and snap it into the case.
  5. Remove the motherboard from its box and remove the female screws on the COM and LPT connectors. Check that the bus frequency and clock multiplier jumpers are set properly.
  6. Insert the CPU(s) onto the motherboard while it is out of the case and sitting on a static-proof surface. Modify one of the vertical supports to clear the capacitor on the mainboard if necessary (or leave it off). Be sure to insert the slot terminator if only using one CPU. Make sure the fan(s) are connected properly
  7. Insert the SDRAM DIMMs.
  8. Mount the mainboard in the case. First set the board gently on the back plate, roughly in place. Make note of which holes in the main board align with threaded backplate holes and which align with spacer slots. Attach female screws to the relevant threaded backplate holes, and put plastic spacers in the holes on the motherboard that align with the wider slide-in backplate slots.
  9. Lower and slide the mainboard into place, making sure that the plastic standoffs are in their proper slots, the ATX edge connectors (KB, COM, etc) line up, and the mounting screws through the board to the female screws on the case back panel line up. Screw the mainboard to the cabinet and replace the female screws onto the Com/LPT connectors through the rear panel.
  10. Attach the case connectors for the front panel pieces: speaker, reset, ATX power: SMI button, power LED. Attach the ATX power supply connector.
  11. Mount the mechanical devices: diskette, CD-ROM, hard drive(s). Remove the blank panels from the front cover as needed for the CD-ROM and diskette, and make sure that those devices protrude the correct distance. On some cases, mounting the CD-ROM drive means first mounting slides and spring snaps onto the drive. Make sure the SCSI hard drive is jumpered for unit 0 and has the terminators enabled. Make sure the CD-ROM is set to "master".
  12. Attach the data cables for the devices: EIDE cable from CD-ROM to "Secondary IDE", SCSI disk to 68-pin SCSI connector on the mainboard, and floppy cable. If the SCSI disk cable has an external connector, mount it in the uppermost available slot. If using a second hard drive, connect it to the "Primary IDE" mainboard connector.
  13. Attach the power cables to the CD-ROM drive, SCSI disk, diskette drive, and optional EIDE hard disk.
  14. Insert the cards: graphics card (in AGP slot or in PCI slot), Ethernet card, and sound card. Screw the connector panels into place.
  15. If it fits, attach the analog audio cable from the CD-ROM drive to the sound card.
  16. Fill in any unused connector slots with blank panels.
  17. Put the sides back onto the case and snap the front cover on.
  18. Attach the monitor, keyboard, mouse, network (optional right now), and power cable.
  19. Plug it in and smoke test it.
  20. Install NT from the supplied CD.

Upgrading

Because these are totally open systems, upgrading should be fairly straightforward.

Talk about what upgrades I expect first.

Component Details

This describes in more detail the components I chose and why.

Mainboard

ASUS P2L97-DS, based on the Intel 440LX chipset and therefore supports AGP, USB, ACPI, SDRAM, and UltraDMA 33. It is a dual-CPU board with built-in ultra-wide SCSI based on the Adaptec 7880 controller. The dual-CPU version has four DIMM slots, four PCI slots, two ISA slots, and one AGP slot. It can be jumpered for a variety of bus speeds from 60MHz to 100MHz.

The mainboard choice is perhaps the second most controversial, after the graphics card. I chose this card for five reasons:

  1. The feature set: dual PII and 440LX. The built-in SCSI was not a requirement.
  2. Experience with ASUS. We have used (in the games group and in the FireWalker project) other ASUS boards (the P55T2P4 and the P54SP4) and they have proven to be very reliable.
  3. Good on-line support. The ASUS web site has loads of information on-line, including BIOS updates and access to archives of the newsgroup.
  4. Newsgroup support. There is a newsgroup, alt.comp.periphs.mainboard.asus that is very active and provides a forum for all sorts of problems.
  5. High availability. This board is available retail at several locations local to campus (e.g. T-Zone, Central Computer) as well as dozens of on-line and mail-order vendors.

Other boards that are roughly equivalent that in some respects may be better are the SuperMicro Super P6DLS and the Intel DK440LX "Dakota".

Upgradability: The 440LX is probably the end of the line for 66MHz-based chipsets, at least the ones we'd be interested in. Summer of 1998 100MHz chipsets, starting the the BX, will appear and by the end of the calendar year, we will probably be replacing mainboards and CPUs.

References

Caveats

  1. The stabilizing clips for the first CPU module cannot be mounted without modification - there is a capacitor in the way. A 1/4" diameter notch must be ground (using a Dremel tool) into it first.
  2. There is no disk LED connector for the on-board SCSI drive.
  3. There is no "Sleep" LED connector.

CPU

Dual 300MHz Intel Pentium II processors, featuring built-in 32KB level one cache and 512KB level two cache. As of 2/1998 available in 233MHz, 266MHz, 300MHz, and 333MHz.

I chose dual processors because of experiences related from engineers in the Cosmo division about the performance gained during development resulting from switching from single-processor machines to dual processors. Most likely this is the result of the OS scheduler in NT being so poor. I chose the 300MHz chip, one step below the maximum as of this writing because the 333MHz part was much more expensive for the added speed. Also, during the two months I was prototyping this system, these parts dropped about $200 in price, about 25%.

We are using OEM CPUs with third party heat sinks and fans.

References

RAM

256MB 10ns SDRAM (2 x 128MB DIMMs). The memory size was a recommendation from the Apache group in Seattle. We tried 128MB but the system kicks its disk around a lot. Combining the Visual Studio environment with Maya is sure to bring a 128MB system to its knees.

During the study period, the 128MB DIMM dropped in price from $550 to $370.

Mainboards based on the 440LX require unbuffered, low-chip count DIMMs, preferably with serial presence detect (SPD, sometimes referred to as "EEPROM").

References

Disk

Seagate ST19171W Barracuda ultra wide SCSI 9.1 GB, 7200RPM

The cost of 9GB SCSI drives has dropped significantly to where it makes good sense to standardize on them. I tried Quantum Atlas II drives, but moved away from them because of anecdotal evidence that they're not as reliable and, frankly, they're noisy. I chose the 7200RPM Barracuda over the 10000RPM Cheetah simply for price reasons and caution against using brand new technology (the high-speed drives).

With UltraDMA 33 EIDE drives available, one needs to ask why use SCSI? Good question. I don't have a good answer, and have had people try to convince me each way. Using SCSI does give us a simple advantage, though: we can add an EIDE drive, install OSR2 on a FAT32 file system on it, and have a dual-boot system without FAT16 by using the BIOS to switch between IDE and SCSI boot.

We set the system disk to unit zero. You can set it to spin up immediately, start on a timer based on unit number, or wait for a SCSI start command. If you do the last one (start command) you need to configure the SCSI BIOS to send the command, so this isn't as robust under change.

References

Graphics

AccelGraphics EclipseII PCI or AGP

Diamond Multimedia FireGL 4000 PCI

This was the hardest one. Since we will be running MAYA, we need a highend card. Through conversations with Jim Krewson, I selected two cards: the AccelGraphics EclipseII and the Diamond Multimedia FireGL 4000. These cards are based on the same chip: Mitsubishi's 3DPRO/2mp rendering processor based on REALimage technology from Evans and Sutherland. Both cards can be equipped with 4MB or 16MB of texture memory; we chose 16MB.

The EclipseII card comes in PCI and AGP varieties; the Diamond card only in PCI today. We use some of all three.

Caveats

  1. The full-length AccelGraphics Eclipse II board does not fit into the midtower case described in this document.
  2. The features of the AccelGraphics EclipseII card are not available to Windows95.

References

Sound

Creative Labs AWE64 Value. A no-brainer, other than perhaps for having no audio card at all. This has been an industry standard for two years, based two previous generations of industry standards from the same company. SB16 PCM and MIDI.

For our dual-boot systems, the AWE64 is a great games sound card in Windows 95.

References

Caveats

CD-ROM

Toshiba XM6102B EIDE internal 12-24X; 3600KB/s, sustained transfer rate; 85ms Average Random Seek; 90ms Average Random Access; 256KB Buffer

This is a good drive, fairly common as an OEM drive. Drives in this performance band have become very cheap: $85 typically. There is no particular reason I chose this one; I mostly wanted to pick one and go with it. I rejected SCSI CD-ROM drives as being unnecessary for this task. Historically in the games group, the CD-ROM drives have not been very reliable and for this number of systems, I expect we'll have to replace 1-2 a year.

References

Ethernet

3COM 3C905B-TX 10/100 PCI. We had been using the 10MB-only version (3C905) for a couple of years and had no trouble with any of them, so I started buying these as OEM cards. We only use the 10baseT port on them, but someday we may have 100baseT available.

Caveats

  1. The drivers for Windows95 are painful to install properly. Unfortunately, they do not come with Windows 95 and need to be downloaded. But since the network interface must be working for downloading, this becomes a deadlock. However, I put the drivers onto a CD-ROM that can be used to install them from.

Reference

Diskette

The type of diskette drive is of little consequence. I would like to equip everyone with LS-120 drives, but can't justify it yet.

Case

Generic GT-312 Full Tower or GT-232 MidTower. Available in mid-tower and full-tower. The front snaps off and the sides hinge open.

This case is available at Central Computer in Santa Clara and Aberdeen, Inc., on the web. The midtower has two external 5.35" bays and room for two 3.5" internal disks. The full-tower has four exposed 5.25" bays and a second 3.5" rack in the back above the power supply. I have not seen a manufacturer's name anywhere on the case. The power supply is 235W or 300W, depending on the case size. It is available in both AT and ATX, but we only use the ATX power version. It's a very easy case to work with, and it encourages you to put it back together.

Caveats

  1. In the midtower, using the P2L97 mainboard, a full-length AGP card does not fit; it conflicts with the lower 3.5" disk rack. Use the full tower instead if you have a card like this.
  2. In the full tower, if you put the CD-ROM at the top, the typical analog audio cable is not long enough to reach the ISA AWE64 card in the bottom of the case.

References

Monitor

I chose the standard SGI D-M20A 20" monitor, manufactured by Sony. Monitors like this one typically list for up to $3000 (full list price) and the internal price is $800. They have both SVGA HD-15 and SGI 13W3 input connectors. These can be ordered via the Electronic Requisition system, selecting the "Internal Order" button.

References

Keyboard/Mouse

I started buying Microsoft Natural keyboards and IntelliMouses, but quickly backed off. Now, the plan is to not buy these components at all, and send each engineer to Fry's or wherever with to goal of picking out their keyboard and mouse, or offering SGI units.. Additionally, taking a look at what the SGI ergonomics center should be factored into the process.

Caveats

  1. MAYA does not work properly with the IntelliMouse or its Logitech equivalent. The middle mouse button (the wheel) does not work. This is a major shame, as the Intellimouse is a big win for office software, and for the development environment.
  2. The Natural Keyboard can crash the IRIX X Window System server under some circumstances that I have not been able to characterize. This can happen by pressing the left "Windows logo" key, between the "Control" and "Alt" keys.

Second disk (optional)

Maxtor DiamondMax 2160 EIDE model 88400D8, 8.4GB. 5200RPM. Ultra DMA Mode 2, 9.5mS average seek time

In order to accommodate two operating systems, I've equipped some systems with a second disk, formatted as a FAT32 file system. This allows us to boot Windows95 when we need it, to run customer software and other applications that are not ready for NT. This particular disk has gotten good reviews and is CHEAP for the capacity it offers (just over $300 as of 2/1998).

References:


Mail the author comments and problem reports.