MyriMatch
Our benchmarks sometimes come from unexpected places, and such is the case with this one. David Tabb is a friend of mine from high school and a long-time TR reader. He recently offered to provide us with an intriguing new benchmark based on an application he's developed for use in his research work. The application is called MyriMatch, and it's intended for use in proteomics, or the large-scale study of protein. I'll stop right here and let him explain what MyriMatch does:

In shotgun proteomics, researchers digest complex mixtures of proteins into peptides, separate them by liquid chromatography, and analyze them by tandem mass spectrometers. This creates data sets containing tens of thousands of spectra that can be identified to peptide sequences drawn from the known genomes for most lab organisms. The first software for this purpose was Sequest, created by John Yates and Jimmy Eng at the University of Washington. Recently, David Tabb and Matthew Chambers at Vanderbilt University developed MyriMatch, an algorithm that can exploit multiple cores and multiple computers for this matching. Source code and binaries of MyriMatch are publicly available.

In this test, 5555 tandem mass spectra from a Thermo LTQ mass spectrometer are identified to peptides generated from the 6714 proteins of S. cerevisiae (baker's yeast). The data set was provided by Andy Link at Vanderbilt University. The FASTA protein sequence database was provided by the Saccharomyces Genome Database.

MyriMatch uses threading to accelerate the handling of protein sequences. The database (read into memory) is separated into a number of jobs, typically the number of threads multiplied by 10. If four threads are used in the above database, for example, each job consists of 168 protein sequences (1/40th of the database). When a thread finishes handling all proteins in the current job, it accepts another job from the queue. This technique is intended to minimize synchronization overhead between threads and minimize CPU idle time.

The most important news for us is that MyriMatch is a widely multithreaded real-world application that we can use with a relevant data set. MyriMatch also offers control over the number of threads used, so we've tested with one to four threads. Also, this is a newer version of the MyriMatch code than we've used in the past, with a larger spectral collection, so these results aren't comparable to those in some of our past articles.

Value scores were generated based on the performance of each chip with four threads.

AMD's victory is short-lived. With 3D rendering tests behind us, we return to our progression of Athlon 64 X2 3600+, Core 2 Duo E4300, Athlon 64 X2 5000+, Athlon 64 X2 5600+, and Core 2 Duo E6600 as the five chips that offer the best value as we climb up the performance scale. There's inarguably a pattern here.

Naturally, being a thoroughly multithreaded application, MyriMatch gives a sizeable performance advantage to the Core 2 Quad Q6600. The chip towers above its dual-core siblings and AMD's Quad FX chips, only bested (and slightly so) by Intel's own QX6700 and QX6800. It's clear which chip to get if you're more concerned about performance than value.

STARS Euler3d computational fluid dynamics
Our next benchmark is also a relatively new one for us. Charles O'Neill works in the Computational Aeroservoelasticity Laboratory at Oklahoma State University, and he contacted us recently to suggest we try the computational fluid dynamics (CFD) benchmark based on the STARS Euler3D structural analysis routines developed at CASELab. This benchmark has been available to the public for some time in single-threaded form, but Charles was kind enough to put together a multithreaded version of the benchmark for us with a larger data set. He has also put a web page online with a downloadable version of the multithreaded benchmark, a description, and some results here. (I believe the score you see there at almost 3Hz comes from our eight-core Clovertown test system.)

In this test, the application is basically doing analysis of airflow over an aircraft wing. I will step out of the way and let Charles explain the rest:

The benchmark testcase is the AGARD 445.6 aeroelastic test wing. The wing uses a NACA 65A004 airfoil section and has a panel aspect ratio of 1.65, taper ratio of 0.66, and a quarter-chord sweep angle of 45º. This AGARD wing was tested at the NASA Langley Research Center in the 16-foot Transonic Dynamics Tunnel and is a standard aeroelastic test case used for validation of unsteady, compressible CFD codes.

The CFD grid contains 1.23 million tetrahedral elements and 223 thousand nodes . . . . The benchmark executable advances the Mach 0.50 AGARD flow solution. A benchmark score is reported as a CFD cycle frequency in Hertz.

So the higher the score, the faster the computer. I understand the STARS Euler3D routines are both very floating-point intensive and oftentimes limited by memory bandwidth. Charles has updated the benchmark for us to enable control over the number of threads used. Here's how our contenders handled the test with different thread counts.

Value scores were generated based on the performance of each chip with four threads.

Much like our 3D rendering test strongly favored AMD chips, our computational fluid dynamics benchmark visibly gives the advantage to Intel's lineup. The 3600+ as always tops of the performance per dollar chart, but beyond that, the E4300, E6300, E6400, and E6600 beat their AMD counterparts. Despite the fact that this app clearly sees large benefits from quad-core processors—the Q6600's score is a testament to that—AMD's Quad FX offerings are both quashed by the lowly Core 2 Duo E6600.