Wednesday, July 22, 2009

The Patience of Job

Well sometimes when you are the first person trying a thing, it takes time to get it right.



It took quite a while for CoolIT Systems to get my Boreas Chassis to me. I had asked them to install the Boreas chiller (for my GPUs), and their new WS-240 chiller for the CPUs. Not only is the 240 a new product, they had never installed one in this kind of chassis before, so things were a little cramped. After they got it installed they realized the fans were a little too thick - 25 mm. After some shopping around they finally found some low profile 20 mm fans.

All this took time to sort out but I finally got my chassis Friday, July 17. Since we had just moved homes the day before our new place was in quite a state of disarray - boxes and boxes everywhere. Finally Saturday morning I had some time and space to open the box and take out the chassis. I spent the morning installing the power supply, BluRay drive, and motherboard; but after installing the motherboard it was clear there were problems.
  1. The coolant hose from the WS-240 was blocking the power connector for CPU-2.
  2. The pump for the Boreas was blocking the main power connector.
  3. The coolant hose between the two CPU water-blocks was too short.
In retrospect I probably should have shipped them the motherboard and these problems would have been obvious to them too. After talking to CoolIT on the phone on Monday they agreed to have me ship it back and correct the problems. They should get the chassis on Friday, and hopefully will be able to get it back to me soon.

While I am incredibly eager to finally get this computer system running, it has been over two years that I have been planning it, so if it takes a few more weeks to get it built right I have to be patient.

In the mean time rumors are the Intel will soon release a Xeon 5590 processor, which will likely be faster than the 5570 processors I bought. I have not opened the boxes my processors are in, so if Intel releases the new ones soon enough, I am hoping I can exchange my 5570s for a couple of 5590s.

Cheers, Eric

Friday, June 12, 2009

Obsolete the Day After You Buy It

So I've been waiting many many months for word on an Intel Skulltrail II motherboard. It figures that the week after I buy the Intel S5520SC motherboard I hear about the Skulltrail II
Of course there are no real specifications out yet, but it's interesting that they are planning it with the new 8-Core Nehalem-EX - that's 32 threads folks! We'll be lucky to see the Nehalem-EX before 2010.

I'm really torn because the Skulltrail II was what I really wanted, but then do I want to wait another 6 months? Also, the Skulltrail I was a terrible motherboard - I don't know what Intel was smoking when they came up with that. They got so much criticism I can only hope they learned their lesson and won't be so stupid next time. I know deep down in my heart I could design a really cool Skulltrail II - probably better than Intel.

So where does that leave me? If the Skulltrail II incorporates an ICH10 compatible RAID controller I would be able to swap out my S5520SC with a Skulltrail II and preserve my RAID file system. Hopefully there would be a spare 4/8 lane PCI Express slot for my FusionIO ioBoard. Of course I would have to by new processors - the EX ones. I suspect the EX processors will not be socket compatible with the Xeon 5580s, so I can't just drop them into my S5520SC motherboard.

What else does Skulltrail II get you? Well probably the ability to overclock the processors. It is well known the Nehalem processors can easily handle 4 GHz or better.

Anyway - so many if's right now. My current plan is to proceed with building Gemini and 6 months to a year from now if the Skulltrail II is appropriate, maybe we'll see Gemini on steroids :-)

Getting it all together




Last Friday I started receiving the parts for Gemini. Pictured here from top left to right is
  1. Enermax Galaxy 1250 Watt power supply
  2. Intel S5520SC motherboard
  3. ATI Radeon 4870 graphics card (temporary)
  4. LG 50 GB Blu-ray reader/writer
  5. two Corsair Dominator 6 GB 1600 MHz memory kits
  6. two Intel Xeon 5580 processors
  7. Intel RAID 5 activation key for the S5520SC
  8. 250 GB HD (temporary) for testing
  9. ArctiClean Thermal Material Remover
  10. Arctic Silver Ceramique - thermal paste
  11. ArctiClean Thermal Surface Purifier
  12. Sun Microsystems keyboard and mouse
I was able to get all these parts from NCIX locally (except for the keyboard) and they gave me a nice discount too.

I could not find any keyboards I liked anywhere, but I have an old Sun Workstation that still has one of the better keyboards I have ever used. However it's not compatible with personal computers. So I ordered one of Sun's newer keyboard kits that is compatible with personal computers. Now if only I could find some way to get all the keys to work with Windows.

The last piece I'm waiting for - the biggie - is my Silverstone TJ-07 case with a CoolIT Systems Boreas and Domino WS 240 water cooling for the graphics cards and CPUs. Then I can finally assemble the first phase of Gemini.

On back-order I have 6 Western Digital Enterprise 2 terabyte disk drives coming. They are so new they are still a month or two away, and in the mean time I have a smaller 250 GB drive I can use for testing.

I've already got a copy of 64-bit Windows 7 Ultimate Release Candidate. When Microsoft finally release Windows 7 in October, I'll go get a legitimate copy then.

I'm also planning to get a Dell UltraSharp 3008WFP 30'' Widescreen LCD Monitor - but I can get that just about any time. I may as well spread out my spending over a few pay cheques.

In the next phases I plan to add a FusionIO ioDrive, but I'm still waiting for them to announce when you can boot from the device. That's going to be my boot drive and it's going to be blazing fast.

In the final phase I plan to get two ATI Radeon 5870 X2 graphics cards, and two Koolance water blocks to connect to the Boreas water chiller. Hopefully these will be ready sometime this fall. I will be ready for some intense GPU overclocking. Also, these cards will be the first to support DirectX-11, the new graphics standard in Windows 7.

We plan to move in about a month to a slightly larger place. One of the things I intend to do is have a dedicated 15 Amp, 240 Volt circuit added to the second bedroom just to power Gemini. It will be a great way to warm the room in the winter. At any rate, it will be interesting to see if I finally get Gemini powered up before we have to move.

When I get things working relatively well I will probably have a coming out party for Gemini.

Friday, June 5, 2009

Recipe for a Well Baked Computer

When most of us buy a computer, generally some bright person somewhere has designed the components to all work well together - but this is not strictly true, I've seen some pretty half-baked computer systems the came off the store shelves.

Designing a computer system is really an exercise in compromise. A good system will have the fewest compromises possible, and all the components will work well together as a whole. Some of the main factors I didn't want to compromise on were: motherboard, graphics cards, file system, power supply, and cooling system.

Power Supply - I really did not want to some day add another component to my computer system and find out there was not enough power available. In my case I ordered an Enermax Galaxy EVO 1250 Watt. This is about the most powerful power supply you can get for a tower PC system. In particular it it has a 24-pin connector for a high-end motherboard like mine, and two 8-pin connectors for each CPU, again for a motherboard like mine. Additionally it has more than enough PCI Express 8-pin connectors for two top-end graphics cards, and the cooling system I want. It has way more disk drive connectors than I will ever need. Finally, this power supply has a really large fan, which means it is relatively quite.

A funny thing I discovered. The power supply I really wanted was the Enermax Evolution 85+ 1250, but it is not sold in North America. This is one of the most efficient power supplies available - over 85% efficient (i.e. wastes less power). For some reason they could not get it approved in North America, so they took the very same power supply, and tuned it down to about 82% and then they were able to get it approved in North America. Go figure? I actually could have gotten the Evolution 85+ from Australia, but it only supports 220 - 240 Volts, and that can be hard to find in Canada in some places. On the other hand the Galaxy will run from 115 - 240 Volts which gives me more options. I still plan to run with 240 Volts, because that is more efficient than 110 Volts, but who knows where I will end up or where I will want to take my computer to.

File System - Most PCs these days have one disk drive, generally with a C: and a D: partition. Historically the C: partition is for your operating system, and the D: partition is for your data files. In some computers C and D are actually separate disk drives. In general you want your C drive to be as fast as possible because that is where the system boots from - and I hate waiting for my system to boot, or reboot. Also, that is typically where you run all your applications from, so again you want it to be fast. Finally, often people run their page-file on the C: partition, and that needs to be fast too.

One thing I have noticed recently is that some system builders use a really fast drive for their C, like a Western Digital VelociRaptor or an Intel X25-A SSD. These drives sacrifice storage space for speed. Then people will use a slower but much larger disk for their D drive. This seems like a good strategy. Some extremests will actually run a RAID 0 array of SSD for some intense speed.

More recently a new technology is becoming popular, sold state memory on a PCI-Express card. The beauty of this technology is that you can get the same performance as a RAID 0 array of SSD (or better), but all on one PCI card. Currently my favorite is something like the ioXtreme from Fusion IO. My strategy is that I would use this for my C drive, and then use a big RAID 5 array for my D drive. This would give me the best of both worlds - honking fast boot, reboot, paging, and application start-up; and massive storage for music, pictures, videos, etc. The only draw back is currently you cannot boot from a Fusion IO board, but they are working on it.

As I plan to build my system in phases I will build the RAID 5 array first and boot from it. When I get a bootable Fusion IO board I will then switch to booting from that. Additionally, I plan to backup my Fusion IO board to my RAID 5 D drive - so everything fits together nicely. I would even keep my RAID 5 array bootable, for emergencies.

Graphics Cards - 4 Graphics Processing Units (GPUs) is about the maximum you can put in a computer. Fortunaly ATI/AMD make some graphics cards with 2 GPU per card. In particular I'm waiting for the new Radeon 5870 X2 to become available (they were just announced recently). These cards use a lot of electrical power - which is why I ordered the power supply I did. All that power has to go somewhere so these cards generate a lot of heat. My plan is to water cool the cards using a CoolIT Systems Boreas chiller. This thing is actually like a mini refrigerator because it uses thermocouples to make the water very cold, consequently removing even more heat from the GPUs. This will come in very handy if I want to over-clock my GPUs. Since the GPUs I want are not for sale yet, I've decided to go with a more modest GPU during phase one of building Gemini.

Motherboard - I've already talked about the Intel S520Sc motherboard I've ordered so I won't go into to much more detail except to say finding a way to cool the CPUs was tricky. Originally I was going to use the Boreas to cool the CPUs, but this motherboard does not support over-clocking, so the Boreas would sort of be wasted. Lucky for me CoolIT Systems just came out with a new water-cooled radiator, the Domino WS 240. The advantage of this is that it will give the CPU better cooling than stock fans, and it fits in the top of the computer case, and leaves the Boreas for some hot GPUs.

Friday, May 29, 2009

The Need for Speed

If computers get faster and faster every year, why do we seem to spend more and more time waiting for them to do things?

The problem is software. People have an insatiable need for more and more features - bells and whistles. Software companies are driven to add more and more features, more and more cool things. Each new software application, or each new version of the same application tends to get bigger and bigger, and bloated with more features the slow down the computer.

For example, web browsers! When the web first started the first web browser, Mosaic, was fairly simple, it could display text and pictures and it didn't require a lot of computer power to do that. Over time people have added other multimedia such as videos (i.e. You Tube) and scripts. These take up more and more computer power. Now that there are tabbed browsers it is common to have many tabs open, and these may all be running scripts or playing media. Increasingly more and more web sites use scripts and media to add the cool factor, or get people's attention (i.e. advertising). When I start up my web browser now, it puts an awful load on my computer slowing it down. All those tabs, media and scripts cause the browser to use more and more threads and processes - so you need a computer that can run a lot of threads and processes at one time.

Another thing people tend to do, especially me, is have lots of applications running and windows open. The more windows you have open, the more memory is used and the more load there is on the computer. The more software you install the more chance there is that the software starts up automatically at boot time, so whenever you reboot your computer it can take longer to finish booting. My current computer takes about 15 to 20 minutes to actually finish booting. Sure I can login a minute after booting, but everything runs incredibly slow until it's finished booting. Finally, a sad fact about Microsoft Windows is that for some reason we seem to always have to be rebooting it.

The bottom line is when the computer gets too slow it becomes more frustrating to use it. The only way to reduce the frustration is to get a faster more powerful computer. In my case my home computer is for my own personal enjoyment - that's the worst time to be frustrated.

Thursday, May 28, 2009

A Tapestry of Threads

In the early days computers could only execute one instruction after another, there was a single CPU and a single Thread of execution. Computers give the illusion of doing many things at once by a technique called Time-Sharing: the work is divided up into many Processes, and the Operating System runs each process for a few thousandths of a second, switching from one process to another. Several people could be using a computer at the same time, each working under the illusion that they had the computer all to themselves - except the more users and processes there were the slower the computer seems to get.

For a long time computers have gotten faster and faster, but at every moment in time computers were just as fast as they could go. The only way to make a more powerful computer was to tie two or more Central Processing Units (CPUs) together in one system. In most cases all CPUs shared the same memory, and the Operating System could take any process and run it on any CPU, making the whole system more powerful because now more than one process could be running at the same time. This was especially useful on systems with lots of users. These were the haydays of mainframe computers.

When personal computers became popular there was never a big need for more than one CPU because each person had the whole system to themselves. For a long time CPUs just got faster and faster every year and were able to do more work, keeping up with increasingly sophisticated and demanding software. About 5 years ago a terrible thing started happening, CPUs stopped getting fasters, primarly because we reached certain limits in the laws of physics. For at least 5 years the fastest CPUs are about 3 to 4 GHz and that's just not likely to change with current electronic computer circuits. The fastest a computer has run to date is just over 7 GHz, but that requires liquid helium and is very expensive and fragile.

But people still demand ever more powerful computers every year. They only way computer makers have been able to make systems more powerful is by adding more CPUs. Now the terminology gets a little crazy. In a single chip computer hardware people refer to the chip as the CPU. Chip makers actually put two or more CPUs on one chip, but they call them Cores. If a CPU has 4 cores the operating system views this as 4 separate CPUs, and software people call them logical CPUs. Some CPUs use a technique called Hyperthreading where each CPU or core is able to run two or more separate threads of execution at the same time. Hyperthreading is not as powerful as adding more cores, but it is an economical way to run more than one process at a time. So if you have a chip like Intel's Core i7 or Xeon 5500, Intel calls this a Hyperthreaded 4-core CPU - but to Windows this looks like 8 separate CPUs. In fact if you open Windows Task Manager you will see 8 CPUs.

Now the system I am building is a Dual Xeon 5580, to Intel that means two CPUs, 8 cores, and 16 threads. To Windows that means 16 CPUs.

Saturday, May 23, 2009

Motherboard and Apple Pie...

Probably the most important part of any computer system is the motherboard, often called the mainboard in today's politically correct climate. The motherboard is like the skeleton in a body, it connects everything together - the CPUs, the memory, the expansion cards, the back-plate connectors, the internal connectors (i.e. disk, USB, firewire, fans, etc.).

Years ago I had my heart set on a dual-CPU AMD system, and Asus made pretty much the perfect motherboard for this. This was the basis of the AMD 4 x 4 I mentioned before. Performance with the Opteron CPUs of the day was pretty good for a 4 core system. Mind you this was no gamer system - most games in those days could not handle more than one core. Even today, most games cannot utilize more than 3 cores. But this system was targeted at the extreme enthusiast consumer. You could be ripping CDs, video editing, web surfing, playing a computer game, etc. - all at the same time. Also, the board has some great overclocking capabilities. Overclocking means running the CPU and other parts faster than factory specifications. So far the world record for overclocking is running an AMD Phemon II at 7.127 GHz - but that requires liquid helium or liquid nitrogen - and a lot of hassles.

Intel must have felt threatened or something, probably because AMD had the hearts and minds of most of the computer enthusiasts. Anyway, Intel released a motherboard called Skulltrail that was a dual-CPU enthusiast board. It was popular with a few people, but the board was sort of an abomination - Intel took parts from some of its server products, and threw them together (badly). It even ran faster than AMD's board - but will no elegance, and less performance than had they taken the time to do it properly.

About this time AMD's quad-core Phenom was out, but it's performance was much less than AMD had promoted. Intel had quad-core CPUs too, but they were the last gasp of a dying Front Side Bus (FSB) architecture. Finally, word was already out about Intel's Nehalem - almost an exact copy of the AMD architecture I respected so much. So I decided to wait.

Nehalem, or Core i7 parts started shipping in the last half of 2008, and while Nehalem was designed for dual and quad CPU systems, the Core i7 could not run dual-CPU. In the first half of 2009 Intel finally released the Xeon 5500 series - finally a Nehalem that could run dual-CPU.

There has long been rumored a Skulltrail II that would be a dual-CPU Nehalem enthusiast-class motherboard. It was even hoped that Intel might even do it properly this time. But we're in the deepest recession of our generation and there is even less incentive for Intel to come out with something so exotic for a niche market.

For weeks I checked the internet for dual-CPU Xeon 5500 motherboards. There were a lot of them out there, but nothing seemed to have the right combination of features I was looking for. Finally I stumbled on the Intel S5520SC workstation motherboard. This was probably the closest I was going to get to a Skulltrail II - and it's only real downside is that it does not support overclocking

S55520SC Features
  • Dual CPU Mother Board.
  • Extended ATX - larger than a standard motherboard but still fits in to a desktop case.
  • 12 memory slots, capable of holding 24 GB of RAM.
  • 2 16-lane PCI Express (v2) slots - for Crossfire dual-video cards.
  • 1 4-lane PCI Express slot (in an 8-lane connector) capable of handling a FusionIO SSD board.
  • ICH10 RAID controller
  • Extensible Firmware Interface - the successor to the ancient BIOS.
There are many other features, but these are the ones I care about most. It's not the perfect motherboard, but I'm not going to hold out hope that anyone, even Intel, will come out with a better one.