Folding@Home
Next, we have a slick little Folding@Home benchmark CD created by notfred, one of the members of Team TR, our excellent Folding team. For the unfamiliar, Folding@Home is a distributed computing project created by folks at Stanford University that investigates how proteins work in the human body, in an attempt to better understand diseases like Parkinson's, Alzheimer's, and cystic fibrosis. It's a great way to use your PC's spare CPU cycles to help advance medical research. I'd encourage you to visit our distributed computing forum and consider joining our team if you haven't already joined one.

The Folding@Home project uses a number of highly optimized routines to process different types of work units from Stanford's research projects. Overall, Folding@Home should be a great example of real-world scientific computing.

notfred's Folding Benchmark CD tests the most common work unit types and estimates performance in terms of the points per day that a CPU could earn for a Folding team member. The CD itself is a bootable ISO. The CD boots into Linux, detects the system's processors and Ethernet adapters, picks up an IP address, and downloads the latest versions of the Folding execution cores from Stanford. It then processes a sample work unit of each type.

On a system with two CPU cores, for instance, the CD spins off a Tinker WU on core 1 and an Amber WU on core 2. When either of those WUs are finished, the benchmark moves on to additional WU types, always keeping both cores occupied with some sort of calculation. Should the benchmark run out of new WUs to test, it simply processes another WU in order to prevent any of the cores from going idle as the others finish. Once all four of the WU types have been tested, the benchmark averages the points per day among them. That points-per-day average is then multiplied by the total number of cores (or threads, in the case of SMT) in the system in order to estimate the total number of points per day that CPU might achieve.

This may be a somewhat quirky method of estimating overall performance, but my sense is that it generally ought to work. We've discussed some potential reservations about how it works here, for those who are interested. I have included results for each of the individual WU types below, so you can see how the different CPUs perform on each.

The Xeon X5550's per-thread performance here, in the individual work unit types, is relatively weak because it's running two threads per core. Once we get to the final analysis, though, its total projected points per day look much stronger. Istanbul is once again a respectable improvement on Shanghai, but not quite fast enough to catch the new Xeons.