Permalink
Browse files

*** empty log message ***

  • Loading branch information...
1 parent 6c32070 commit 67f3612159180bdfee6706d66c419ca5e129c0f5 igouy-guest committed Jul 11, 2010
Showing with 31 additions and 118 deletions.
  1. +31 −118 README
View
149 README
@@ -1,132 +1,45 @@
- nanobench - The Computer Language Benchmarks Game
+ The Computer Language Benchmarks Game
- Sep 2008, Isaac Gouy
+July 2010, Isaac Gouy
- AUDIENCE
+ DIRECTORY GUIDE
- - someone who wants to measure programs of their own
- - someone who wants to replicate some of the benchmarks game
+ shootout/bench
+ - source code of contributed programs
+ - most of the sub-directories and programs are OBSOLETE
+ - remember to Show dead files
+ - see shootout/bench/README
+ shootout/bencher
+ - Python measurement scripts for linux and win32
+ - if you want to measure programs of your own
+ - see shootout/bencher/README
- MOTIVATION
+ shootout/nanobench
+ - older linux version of bencher
+ - if you need to check how benchmarks game programs are measured
+ - see shootout/nanobench/README
- Too many problems getting the old minibench Perl script to run on a
- new Ubuntu x64 quadcore install - specifically with the GTOP wrapper.
+ shootout/website
+ - PHP scripts and data files used to create the website
+ - see shootout/website/README
- nanobench is written to create the data files, markup files and text
- files that have been presented through "The Computer Language Benchmarks
- Game" website over the past 4 years.
+ OBSOLETE DIRECTORIES
- REQUIREMENTS
+ Obsolete before the end of 2008
- Linux (possibly maybe some other Unix flavour)
- Python 2.5
- gnu make
- cvs (possibly maybe)
- cmp
- diff
- ndiff http://www.math.utah.edu/~beebe/software/ndiff/
- highlight http://www.andre-simon.de/zip/download.html
- affinity (possibly maybe) http://pypi.python.org/pypi/affinity/0.1.0
+ shootout/bin
+ shootout/compare
+ shootout/css
+ shootout/data
+ shootout/download
+ shootout/etc
+ shootout/gentoo_p4_makefiles
+ shootout/highlightdefs
+ shootout/html
+ shootout/images
-
- BASIC ASSUMPTIONS
-
- Program source files are organized by 'benchmark' in different subdirectories,
- and program source files have the same name as the 'benchmark' distinguished
- by file extension, for example:
-
- [src directory]
- my_first_benchmark [subdirectory]
- my_first_benchmark.java [program source file]
- my_first_benchmark.gcc [program source file]
- my_first_benchmark.gcc-2.gcc [program source file]
-
- my_second_benchmark [subdirectory]
- my_second_benchmark.python [program source file]
- my_second_benchmark.gcc [program source file]
- my_second_benchmark.perl-2.perl [program source file]
-
-
- LOCAL CONFIGURATION
-
- 1) copy, rename and modify - /shootout/nanobench/makefiles/u32q.ini
- 2) copy, rename and modify - /shootout/nanobench/makefiles/u32q.programs.Makefile
-
- Specifically,
- ROOT DIRS
- 'root' is the directory where you want nanobench to put measurements and files.
- 'src' is the directory that contains benchmark directories with source code.
- 'nano' is the CVS directory /shootout/nanobench
-
- SWEEP DIRS
- Either remove dat_sweep, code_sweep, log_sweep from *.ini or set them to
- directories that exist - nanobench will not create them.
-
- 'makefile' should be the path to your renamed *.programs.Makefile
-
- 3) copy, rename and modify the bash script - /shootout/nanobench/nanobench
-
-
- Generally,
- filter the benchmarks you're interested in using ONLYDIRS
- filter the language implementations you're interested in using ONLY or IGNORE
-
- use your renamed *.programs.Makefile to prepare or build a program before the run.
-
-
- PROGRAM OUTPUT
-
- 1) The code_sweep directory will contain the accumulated log files and
- 'highlight' markup files shown on "The Computer Language Benchmarks Game" website.
-
- 2) The dat_sweep directory (or the root directory) will contain the data.csv
- & ndata.csv data files shown on "The Computer Language Benchmarks Game" website
- (they only have the fastest measurements from repeated runs); and a bzipped
- *-bulkdata.csv which contains ALL the measurements for programs which did not
- fail - so that's probably what you'll want to look at.
-
- 3) for each source code subdirectory, a matching directory will be created
- under root, containing
- code subdirectory - symlinks to source files and 'highlight' markup files
- data subdirectory - compressed measurement files
- log subdirectory - log text files recording each program build and run
- tmp subdirectory - files needed to be build and measure the current program
- expected output files for various data input sizes *_out
-
-
- USAGE
-
- use the nanobench bash script to invoke nanobench with your particular *.ini file
-
- measurements are made when a source code file in a src subdirectory doesn't have a
- corresponding *.dat file or the *.dat file is older.
-
- re-measurement can be forced by deleting a particular *.dat file
-
- re-measurement can be forced for a particular source file extension
- ./nanobench --force java
-
- re-measurement can be forced for a particular benchmark
- ./nanobench --force binarytrees
-
-
- TESTDATA
-
- the location of the test data redirected to stdin for knucleotide, regexdna,
- and revcomp is given by the relative path in the *.ini file section [testdata]
-
- test data files of appropriate sizes should be generated using the fasta program
- and named according to benchmark and size, for example:
-
- knucleotide-input50000.txt
- knucleotide-input500000.txt
- knucleotide-input5000000.txt
- regexdna-input50000.txt
- regexdna-input500000.txt
- regexdna-input5000000.txt
-

0 comments on commit 67f3612

Please sign in to comment.