Brahma Resources Page

This is the official home page for the Duke University Physics Department's Brahma Beowulf Project. Please feel free to explore this website. There are a number of things on the site itself that may be of use or interest to individuals interested in beowulf-style cluster computing.

This site is maintained by rgb. It and all works linked thereupon authored by Robert G. Brown are Copyright 2003 (or as indicated in the document) and made available through a modified Open Publication License unless superceded by another license directly associated with the document. (Current site version 2.2-1)

Home Top Beowulf Book Intro 2003 Duke Model Helicity Intro to IP Local IP admin Contact About
xmlsysd wulfstat wulflogger wulfweb cpu_rate C++ Rant

Site Links






Robert G. Brown
Duke University Physics Department
Durham, NC 27708-0305
Copyright Robert G. Brown, 2018


This is the current snapshot of the cpu_rate Microtimer harness and microbenchmark program. I use this program to do quick-and-dirty benchmarks of a variety of systems performance parameters. The timing harness itself is at least modestly advanced -- it uses the CPU cycle counter instead of gettimeofday where possible, for example (on all post-Pentium Intels, post-Athlon AMDs). There are tests for memory performance, "arithmetic" performance, transcendental (savage benchmark) performance. In many cases (specifically those involving vectors and memory) the size of the vectors can be varied and the effects of cache size and hierarchical memory explored.

This version of the code supports the relatively simple and "object-like" addition of code fragments to be timed. There is a fairly long list of operations and fragments it already times (enter "cpu_rate -l" to get a current list). It is in beta mode and may have bugs. There may well be better timers out there (e.g. lmbench) only perhaps. not so easy to use.

Because of the nature of this program I recommend that you grab the tarball and work with it rather than simply build/install either the source rpm or the provided (RH 9) binary rpm. The latter "should work", but part of the fun of a benchmark/timer is playing with build options and seeing how it works. There are also some (probably broken in the current release) scripts in the source directory that in previous versions scanned e.g. across the -s size option for the vector benchmarks; these scripts, with a bit of repair, would make it pretty easy to generate a graphable file of e.g. stream or memory read/write with and without random shuffling.

I hope that you find cpu_rate useful.


Document TypeSize (K)Last Modified
i386 RPM 17
Source RPM 171
Tar/Gzip (tgz) 169
License Info

Except where explicitly indicated otherwise, the documents linked from this page are all provided under a modified Gnu License appropriate for the document type (OPL for text, GPL for software/source). Please read the relevant license(s) before redistributing the document(s) in any form -- an explicit agreement with the author is required for certain kinds of for-profit redistributions. In all cases the license makes the documents generally available for unlimited personal use and non-profit distributions (for example, linking or posting copies on a website, distributing paper copies to a class for free or at cost).

The author cherishes feedback. If you like or dislike the document(s) and would like to say so, wish to redistribute a version in any medium to be sold at a profit, would like to contribute or comment on material, or just want to say hi, feel free to contact the author

Home Top Beowulf Book Intro 2003 Duke Model Helicity Intro to IP Local IP admin Contact About
xmlsysd wulfstat wulflogger wulfweb cpu_rate C++ Rant

This page is maintained by Robert G. Brown: