Geek Patrol



Geekbench Preview

We’ve put together a preview of Geekbench, our cross-platform benchmarking program, for Mac OS X (as a universal binary) and Windows. While Geekbench isn’t terribly pretty (it’s just a command-line application), we hope some people will find it useful.

Benchmarks

Geekbench features a number of different benchmarks that test CPU (both integer and floating-point) and memory performance. Here’s a brief summary of what each benchmark does:

  • mandelbrot (sqrt) computes a Mandelbrot set using the square root function for some of the calculations. mandelbrot (sqrt) is multi-threaded.
  • mandelbrot (nosqrt) computes a Mandelbrot set without using the square root function for any of the calculations. mandelbrot (nosqrt) is multi-threaded
  • blowfish (cache) performs Blowfish encryption on a dataset small enough to fit in a processor’s cache. blowfish (cache) is multi-threaded.
  • blowfish (memory) performs Blowfish encryption of a dataset too large to fit into a processor’s cache. blowfish (memory) is multi-threaded.
  • emulate 6502 executes code compiled for the 6502 in a virtual 6502 processor. emulate 6502 is single threaded.
  • memory (stdlib) fill fills a block of memory with values using standard library functions. memory (stdlib) fill is single threaded.
  • memory (stdlib) sequential access accesses chunks of memory in a larger block of memory sequentially using standard library functions. memory (stdlib) sequential access is single threaded.
  • memory (stdlib) random access accesses chunks of memory in a larger block of memory randomly using standard library functions. memory (stdlib) random access is single threaded.
  • memory (stdlib) copy copies one block of memory to another using standard library functions. memory (stdlib) copy is single threaded.
  • memory (stream) copy copies memory from one location to another using processor operations. memory (stream) copy is single threaded.
  • memory (stream) scale, memory (stream) add, and memory (stream) triad all copy memory from one location to another while manipulating the contents of the memory. All three benchmarks are single threaded.

For all of the benchmarks, higher results are better.

Benchmark Results

We’ve posted sample benchmark results for:

System Requirements

  • Mac OS X version requires Mac OS X 10.4 or later and 80MB free memory.
  • Windows version requires Windows 95 or later and 80MB free memory.

Download

Comments?

Comments and feedback are appreciated, so what you think of Geekbench!


Trackbacks & Pingbacks

  1. Geek Patrol | Geekbench 2006 Private Beta pingbacked Posted June 25, 2006, 2:40 pm
  2. Dark Project » Memory Jog pingbacked Posted August 11, 2006, 7:19 pm

Comments

  1. 1 david says:

    there is no explantion of what optimizations you have used for your benchmarks.

    • altivec/SSE3 is an important issue!?
    • i cant recall if xcode will support non-gcc backends (so you dont analyze the ibm/intel high-perfornace compiliers?!)

    useful to make this clear.

    Posted January 13, 2006, 4:16 pm
  2. 2 John Poole says:

    For the benchmarks we’re writing platform-neutral C and C++, so there are no platform-specific optimizations (like AltiVec or SSE3) in the benchmarks. We also don’t use any exotic compilers (like the Intel or IBM compilers); we build Geekbench with what we consider the de-facto standard compiler for each platform, and with the optimizations the compiler suggest for release code.

    What we’re trying to measure is the performance of a platform as a whole. If we started using exotic compilers (or exotic compiler options) I don’t think we’d accomplish that goal.

    Posted January 13, 2006, 11:52 pm
  3. 3 necrosis says:

    since you’re not releasing a version for linux, nor any source, I’m wondering if the results would be accurate when running this through wine.

    ie: does the program issue any system calls within any of the number crunching loops?

    Posted January 30, 2006, 10:15 pm
  4. Mr. Poole it should be “de-facto” rather than “de-factor”. The first means “in fact” or “in practice” while the second means, uhm… well, it isn’t a real word.

    Posted January 31, 2006, 6:16 am
  5. 5 m3thos says:

    What about the source code?

    Free the source, so one can test it out on linux for instance…

    That way one could test it on linux on any kind of hardware… (excluding the Operating System from the benchmark equation)

    Can you provide the source, please?

    Posted January 31, 2006, 3:58 pm
  6. 6 maZintel.com says:

    Please advise us if you free the source. Thz.

    mazintel@gmail.com

    http://www.maZintel.com

    Posted February 1, 2006, 10:40 am
  7. 7 huperniketes says:

    Microsoft has downloadable versions of both Win XP 64 and their Visual Studio Extreme Edition C++ compiler. Why not build a 64-bit version of GeekBench and perhaps we might see better results for x86-64 Wintel.

    Posted February 2, 2006, 2:30 am
  8. 8 dave cortesi says:

    A search on “lmbench” gets no hits—which seems kinda sad. didja at least look at it?

    Posted February 2, 2006, 11:35 pm
  9. 9 Blake says:

    It would be good if you could have an alternative machine-parseable output (XML or JSON or key/value pair or Python marshalled dict or something). This would make it easier to do post-processing of the output. I do understand that any Perl hacker worth his salt can parse the current output, but just a suggestion.

    Posted June 16, 2006, 2:57 pm
  10. 10 John says:

    Blake,

    Preview 3 has a command-line switch that saves the results as an XML file.

    Posted June 16, 2006, 3:57 pm