All tests on r45 or r70

Aug 3 2009

First version of fasta. Translation of fasta.c, fetched from
	http://shootout.alioth.debian.org/u32q/benchmark.php?test=fasta&lang=gpp&id=4

fasta -n 25000000
	gcc -O2 fasta.c	5.98u 0.00s 6.01r
	gccgo -O2 fasta.go	8.82u 0.02s 8.85r
	6g fasta.go	13.50u 0.02s 13.53r
	6g -B fata.go	12.99u 0.02s 13.02r

Aug 4 2009
[added timing.sh]

# myrandom:
#   hand-written optimization of integer division
#   use int32->float conversion
fasta -n 25000000
	# probably I/O library inefficiencies
	gcc -O2 fasta.c	5.99u 0.00s 6.00r 
	gccgo -O2 fasta.go	8.82u 0.02s 8.85r
	gc fasta	10.70u 0.00s 10.77r
	gc_B fasta	10.09u 0.03s 10.12r

reverse-complement < output-of-fasta-25000000
	# we don't know - memory cache behavior?
	gcc -O2 reverse-complement.c	2.04u 0.94s 10.54r
	gccgo -O2 reverse-complement.go	6.54u 0.63s 7.17r
	gc reverse-complement	6.55u 0.70s 7.26r
	gc_B reverse-complement	6.32u 0.70s 7.10r

nbody 50000000
	# math.Sqrt needs to be in assembly; inlining is probably the other 50%
	gcc -O2 nbody.c	21.61u 0.01s 24.80r
	gccgo -O2 nbody.go	118.55u 0.02s 120.32r
	gc nbody	100.84u 0.00s 100.85r
	gc_B nbody	103.33u 0.00s 103.39r
[
hacked Sqrt in assembler
	gc nbody	31.97u 0.00s 32.01r
]

binary-tree 15 # too slow to use 20
	# memory allocation and garbage collection
	gcc -O2 binary-tree.c -lm	0.86u 0.00s 0.87r
	gccgo -O2 binary-tree.go	1.69u 0.46s 2.15r
	gccgo -O2 binary-tree-freelist.go	8.48u 0.00s 8.48r
	gc binary-tree	9.60u 0.01s 9.62r
	gc binary-tree-freelist	0.48u 0.01s 0.50r

August 5, 2009

fannkuch 12
	# bounds checking is half the difference
	# rest might be registerization
	gcc -O2 fannkuch.c	60.09u 0.01s 60.32r
	gccgo -O2 fannkuch.go	64.89u 0.00s 64.92r
	gc fannkuch	124.59u 0.00s 124.67r
	gc_B fannkuch	91.14u 0.00s 91.16r

regex-dna 100000
	# regexp code is slow on trivial regexp
	gcc -O2 regex-dna.c -lpcre	0.92u 0.00s 0.99r
	gc regexp-dna	26.94u 0.18s 28.75r
	gc_B regexp-dna	26.51u 0.09s 26.75r

spectral-norm 5500
	gcc -O2 spectral-norm.c -lm	11.54u 0.00s 11.55r
	gccgo -O2 spectral-norm.go	12.20u 0.00s 12.23r
	gc spectral-norm	50.23u 0.00s 50.36r
	gc_B spectral-norm	49.69u 0.01s 49.83r
	gc spectral-norm-parallel	24.47u 0.03s 11.05r  # has shift >>1 not div /2
	[using >>1 instead of /2 : gc gives 24.33u 0.00s 24.33r]

August 6, 2009

k-nucleotide 5000000
	# string maps are slower than glib string maps
	gcc -O2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include k-nucleotide.c -lglib-2.0	k-nucleotide.c: 10.72u 0.01s 10.74r
	gccgo -O2 k-nucleotide.go	21.64u 0.83s 22.78r
	gc k-nucleotide	16.08u 0.06s 16.50r
	gc_B k-nucleotide	17.32u 0.02s 17.37r

mandelbrot 5500
	# floating point code generator should use more registers
	gcc -O2 mandelbrot.c	56.13u 0.02s 56.17r
	gccgo -O2 mandelbrot.go	57.49u 0.01s 57.51r
	gc mandelbrot	74.32u 0.00s 74.35r
	gc_B mandelbrot	74.28u 0.01s 74.31r

meteor 16000
	# we don't know
	gcc -O2 meteor-contest.c	0.10u 0.00s 0.10r
	gccgo -O2 meteor-contest.go	0.12u 0.00s 0.14r
	gc meteor-contest	0.24u 0.00s 0.26r
	gc_B meteor-contest	0.23u 0.00s 0.24r

pidigits 10000
	# bignum is slower than gmp
	gcc -O2 pidigits.c -lgmp	2.60u 0.00s 2.62r
	gc pidigits	77.69u 0.14s 78.18r
	gc_B pidigits	74.26u 0.18s 75.41r
	gc_B pidigits	68.48u 0.20s 69.31r   # special case: no bounds checking in bignum

August 7 2009

# New gc does better division by powers of 2.  Significant improvements:

spectral-norm 5500
	# floating point code generator should use more registers; possibly inline evalA
	gcc -O2 spectral-norm.c -lm	11.50u 0.00s 11.50r
	gccgo -O2 spectral-norm.go	12.02u 0.00s 12.02r
	gc spectral-norm	23.98u 0.00s 24.00r	# new time is 0.48 times old time, 52% faster
	gc_B spectral-norm	23.71u 0.01s 23.72r	# ditto
	gc spectral-norm-parallel	24.04u 0.00s 6.26r  # /2 put back.  note: 4x faster (on r70, idle)

k-nucleotide 1000000
	# string maps are slower than glib string maps
	gcc -O2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include k-nucleotide.c -lglib-2.0	10.82u 0.04s 10.87r
	gccgo -O2 k-nucleotide.go	22.73u 0.89s 23.63r
	gc k-nucleotide	15.97u 0.03s 16.04r
	gc_B k-nucleotide	15.86u 0.06s 15.93r	# 8.5% faster, but probably due to weird cache effeccts in previous version

pidigits 10000
	# bignum is slower than gmp
	gcc -O2 pidigits.c -lgmp	2.58u 0.00s 2.58r
	gc pidigits	71.24u 0.04s 71.28r	# 8.5% faster
	gc_B pidigits	71.25u 0.03s 71.29r	# 4% faster

threadring 50000000
	gcc -O2 threadring.c -lpthread	35.51u 160.21s 199.50r
	gccgo -O2 threadring.go	90.33u 459.95s 448.03r
	gc threadring	33.11u 0.00s 33.14r
	GOMAXPROCS=4 gc threadring	114.48u 226.65s 371.59r
	# change wait code to do <-make(chan int) instead of time.Sleep
	gc threadring	28.41u 0.01s 29.35r
	GOMAXPROCS=4 gc threadring	112.59u 232.83s 384.72r
	
chameneos 6000000
	gcc -O2 chameneosredux.c -lpthread	18.14u 276.52s 76.93r
	gc chameneosredux	20.19u 0.01s 20.23r

Aug 10 2009

# new 6g with better fp registers, fast div and mod of integers
# complete set of timings listed. significant changes marked ***

fasta -n 25000000
	# probably I/O library inefficiencies
	gcc -O2 fasta.c	5.96u 0.00s 5.97r
	gc fasta	10.59u 0.01s 10.61r
	gc_B fasta	9.92u 0.02s 9.95r

reverse-complement < output-of-fasta-25000000
	# we don't know - memory cache behavior?
	gcc -O2 reverse-complement.c	1.96u 1.56s 16.23r
	gccgo -O2 reverse-complement.go	6.41u 0.62s 7.05r
	gc reverse-complement	6.46u 0.70s 7.17r
	gc_B reverse-complement	6.22u 0.72s 6.95r

nbody 50000000
	# math.Sqrt needs to be in assembly; inlining is probably the other 50%
	gcc -O2 nbody.c	21.26u 0.01s 21.28r
	gccgo -O2 nbody.go	116.68u 0.07s 116.80r
	gc nbody	86.64u 0.01s 86.68r	# -14%
	gc_B nbody	85.72u 0.02s 85.77r	# *** -17%

binary-tree 15 # too slow to use 20
	# memory allocation and garbage collection
	gcc -O2 binary-tree.c -lm	0.87u 0.00s 0.87r
	gccgo -O2 binary-tree.go	1.61u 0.47s 2.09r
	gccgo -O2 binary-tree-freelist.go	0.00u 0.00s 0.01r
	gc binary-tree	9.11u 0.01s 9.13r	# *** -5%
	gc binary-tree-freelist	0.47u 0.01s 0.48r

fannkuch 12
	# bounds checking is half the difference
	# rest might be registerization
	gcc -O2 fannkuch.c	59.92u 0.00s 59.94r
	gccgo -O2 fannkuch.go	65.54u 0.00s 65.58r
	gc fannkuch	123.98u 0.01s 124.04r
	gc_B fannkuch	90.75u 0.00s 90.78r

regex-dna 100000
	# regexp code is slow on trivial regexp
	gcc -O2 regex-dna.c -lpcre	0.91u 0.00s 0.92r
	gc regex-dna	27.25u 0.02s 27.28r
	gc_B regex-dna	29.51u 0.03s 29.55r

spectral-norm 5500
	# possibly inline evalA
	gcc -O2 spectral-norm.c -lm	11.57u 0.00s 11.57r
	gccgo -O2 spectral-norm.go	12.07u 0.01s 12.08r
	gc spectral-norm	23.99u 0.00s 24.00r
	gc_B spectral-norm	23.73u 0.00s 23.75r

k-nucleotide 1000000
	# string maps are slower than glib string maps
	gcc -O2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include k-nucleotide.c -lglib-2.0	10.63u 0.02s 10.69r
	gccgo -O2 k-nucleotide.go	23.19u 0.91s 24.12r
	gc k-nucleotide	16.73u 0.04s 16.78r	# *** +5% (but this one seems to vary by more than that)
	gc_B k-nucleotide	16.46u 0.04s 16.51r	# *** +5%

mandelbrot 16000
	gcc -O2 mandelbrot.c	56.16u 0.00s 56.16r
	gccgo -O2 mandelbrot.go	57.41u 0.01s 57.42r
	gc mandelbrot	64.05u 0.02s 64.08r	# *** -14%
	gc_B mandelbrot	64.10u 0.02s 64.14r	# *** -14%

meteor 16000
	# we don't know
	gcc -O2 meteor-contest.c	0.10u 0.00s 0.10r
	gccgo -O2 meteor-contest.go	0.12u 0.00s 0.12r
	gc meteor-contest	0.18u 0.00s 0.20r	# *** -25%
	gc_B meteor-contest	0.17u 0.00s 0.18r	# *** -24%

pidigits 10000
	# bignum is slower than gmp
	gcc -O2 pidigits.c -lgmp	2.57u 0.00s 2.57r
	gc pidigits	71.82u 0.04s 71.89r
	gc_B pidigits	71.84u 0.08s 71.98r

threadring 50000000
	gcc -O2 threadring.c -lpthread	30.91u 164.33s 204.57r
	gccgo -O2 threadring.go	87.12u 460.04s 447.61r
	gc threadring	38.55u 0.00s 38.56r	# *** +16%

chameneos 6000000
	gcc -O2 chameneosredux.c -lpthread	17.93u 323.65s 88.47r
	gc chameneosredux	21.72u 0.00s 21.73r

August 10 2009

# In-place versions for some bignum operations.
pidigits 10000
	gcc -O2 pidigits.c -lgmp	2.56u 0.00s 2.57r
	gc pidigits	55.22u 0.04s 55.29r	# *** -23%
	gc_B pidigits	55.49u 0.02s 55.60r	# *** -23%

September 3 2009

# New 6g inlines slices, has a few other tweaks.
# Complete rerun. Significant changes marked.

fasta -n 25000000
	# probably I/O library inefficiencies
	gcc -O2 fasta.c	5.96u 0.00s 5.96r
	gc fasta	10.63u 0.02s 10.66r
	gc_B fasta	9.92u 0.01s 9.94r

reverse-complement < output-of-fasta-25000000
	# we don't know - memory cache behavior?
	gcc -O2 reverse-complement.c	1.92u 0.33s 2.93r
	gccgo -O2 reverse-complement.go	6.76u 0.72s 7.58r	# +5%
	gc reverse-complement	6.59u 0.70s 7.29r	# +2%
	gc_B reverse-complement	5.57u 0.80s 6.37r	# -10%

nbody 50000000
	# math.Sqrt needs to be in assembly; inlining is probably the other 50%
	# also loop alignment appears to be critical
	gcc -O2 nbody.c	21.28u 0.00s 21.28r
	gccgo -O2 nbody.go	119.21u 0.00s 119.22r	# +2%
	gc nbody	109.72u 0.00s 109.78r	# + 28% *****
	gc_B nbody	85.90u 0.00s 85.91r

binary-tree 15 # too slow to use 20
	# memory allocation and garbage collection
	gcc -O2 binary-tree.c -lm	0.86u 0.00s 0.87r
	gccgo -O2 binary-tree.go	1.88u 0.54s 2.42r	# +17%
	gccgo -O2 binary-tree-freelist.go	0.01u 0.01s 0.02r
	gc binary-tree	8.94u 0.01s 8.96r	# -2%
	gc binary-tree-freelist	0.47u 0.01s 0.48r

fannkuch 12
	# bounds checking is half the difference
	# rest might be registerization
	gcc -O2 fannkuch.c	60.12u 0.00s 60.12r
	gccgo -O2 fannkuch.go	92.62u 0.00s 92.66r		# +41% ***
	gc fannkuch	123.90u 0.00s 123.92r
	gc_B fannkuch	89.71u 0.00s 89.74r	# -1%

regex-dna 100000
	# regexp code is slow on trivial regexp
	gcc -O2 regex-dna.c -lpcre	0.88u 0.00s 0.88r
	gc regex-dna	25.77u 0.01s 25.79r		# -5%
	gc_B regex-dna	26.05u 0.02s 26.09r	# -12% ***

spectral-norm 5500
	# possibly inline evalA
	gcc -O2 spectral-norm.c -lm	11.51u 0.00s 11.51r
	gccgo -O2 spectral-norm.go	11.95u 0.00s 11.96r
	gc spectral-norm	24.23u 0.00s 24.23r
	gc_B spectral-norm	23.83u 0.00s 23.84r

k-nucleotide 1000000
	# string maps are slower than glib string maps
	gcc -O2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include k-nucleotide.c -lglib-2.0	10.68u 0.04s 10.72r
	gccgo -O2 k-nucleotide.go	23.03u 0.88s 23.92r
	gc k-nucleotide	15.79u 0.05s 15.85r	# -5% (but this one seems to vary by more than that)
	gc_B k-nucleotide	17.88u 0.05s 17.95r # +8% (ditto)

mandelbrot 16000
	gcc -O2 mandelbrot.c	56.17u 0.02s 56.20r
	gccgo -O2 mandelbrot.go	56.74u 0.02s 56.79r	 # -1%
	gc mandelbrot	63.31u 0.01s 63.35r	# -1%
	gc_B mandelbrot	63.29u 0.00s 63.31r	# -1%

meteor 16000
	# we don't know
	gcc -O2 meteor-contest.c	0.10u 0.00s 0.10r
	gccgo -O2 meteor-contest.go	0.11u 0.00s 0.12r
	gc meteor-contest	0.18u 0.00s 0.19r
	gc_B meteor-contest	0.17u 0.00s 0.18r

pidigits 10000
	# bignum is slower than gmp
	gcc -O2 pidigits.c -lgmp	2.56u 0.00s 2.57r
	gc pidigits	55.87u 0.03s 55.91r
	gc_B pidigits	55.93u 0.03s 55.99r

# these tests are compared using real time, since they run multiple processors
# accuracy probably low
threadring 50000000
	gcc -O2 threadring.c -lpthread	26.31u 164.69s 199.92r	# -2%
	gccgo -O2 threadring.go	87.90u 487.26s 472.81r	# +6%
	gc threadring	28.89u 0.00s 28.90r	# -25% ***

chameneos 6000000
	gcc -O2 chameneosredux.c -lpthread	16.41u 296.91s 81.17r	# -8%
	gc chameneosredux	19.97u 0.00s 19.97r	# -8%

Sep 22, 2009

# 6g inlines sliceslice in most cases.

fasta -n 25000000
	# probably I/O library inefficiencies
	gc fasta	10.24u 0.00s 10.25r	# -4%
	gc_B fasta	9.68u 0.01s 9.69r	# -3%

reverse-complement < output-of-fasta-25000000
	# we don't know - memory cache behavior?
	gc reverse-complement	6.67u 0.69s 7.37r	# +1%
	gc_B reverse-complement	6.00u 0.64s 6.65r	# +7%

nbody -n 50000000
	# math.Sqrt needs to be in assembly; inlining is probably the other 50%
	# also loop alignment appears to be critical
	gc nbody	86.27u 0.00s 86.29r	# -21%
	gc_B nbody	104.52u 0.00s 104.54r	# +22%

fannkuch 12
	# bounds checking is half the difference
	# rest might be registerization
	gc fannkuch	128.36u 0.00s 128.37r	# +4%
	gc_B fannkuch	89.32u 0.00s 89.34r

regex-dna 100000
	# regexp code is slow on trivial regexp
	gc regex-dna	24.82u 0.01s 24.86r	# -4%
	gc_B regex-dna	24.55u 0.01s 24.57r	# -6%

spectral-norm 5500
	# possibly inline evalA
	gc spectral-norm	24.05u 0.00s 24.07r	# -1%
	gc_B spectral-norm	23.60u 0.00s 23.65r	 # -1%

k-nucleotide 1000000
	# string maps are slower than glib string maps
	gc k-nucleotide	17.84u 0.04s 17.89r	# +13% but mysterious variation continues
	gc_B k-nucleotide	15.56u 0.08s 15.65r	# -13% (ditto)

mandelbrot 16000
	gc mandelbrot	64.08u 0.01s 64.11r	# +1%
	gc_B mandelbrot	64.04u 0.00s 64.05r	# +1%

pidigits 10000
	# bignum is slower than gmp
	gc pidigits	58.68u 0.02s 58.72r	# +5%
	gc_B pidigits	58.86u 0.05s 58.99r	# +5%

# these tests are compared using real time, since they run multiple processors
# accuracy probably low
threadring 50000000
	gc threadring	32.70u 0.02s 32.77r	# +13%

chameneos 6000000
	gc chameneosredux	26.62u 0.00s 26.63r	# +13%

Sep 24, 2009

# Sqrt now in assembler for 6g.
nbody -n 50000000
	# remember, at least for 6g, alignment of loops may be important
	gcc -O2 nbody.c	21.24u 0.00s 21.25r
	gccgo -O2 nbody.go	121.03u 0.00s 121.04r
	gc nbody	30.26u 0.00s 30.27r	# -65% ***
	gc_B nbody	30.20u 0.02s 30.22r	# -72% *** 

Nov 13 2009

# fix bug in regexp; take performance hit.  good regexps will come in time.
regex-dna 100000
	gcc -O2 regex-dna.c -lpcre	0.92u 0.00s 0.94r
	gc regex-dna	29.78u 0.03s 29.83r
	gc_B regex-dna	32.63u 0.03s 32.74r

Nov 24 2009

# Roger Peppe's rewrite of the benchmark
chameneos 6000000
	gcc -O2 chameneosredux.c -lpthread	18.00u 303.29s 83.64r
	gc chameneosredux	12.10u 0.00s 12.10r  # 2.22X faster

Jan 6, 2009

# Long-overdue update.  All numbers included in this complete run.
# Some programs (e.g. reverse-complement) rewritten for speed.
# Regular expressions much faster in common cases (although still far behind PCRE)
# Bignum stuff improved
# Better (but sometimes slower) locking in channels.

fasta -n 25000000
	gcc -O2 fasta.c	5.99u 0.01s 6.00r
	gc fasta	9.11u 0.00s 9.12r	# -11%
	gc_B fasta	8.60u 0.00s 8.62r	# +12% ??

reverse-complement < output-of-fasta-25000000
	gcc -O2 reverse-complement.c	2.00u 0.80s 9.54r
	gccgo -O2 reverse-complement.go	4.57u 0.35s 4.94r	# 33% faster
	gc reverse-complement	2.01u 0.38s 2.40r	# 3.3X faster
	gc_B reverse-complement	1.88u 0.36s 2.24r	# 3.2X faster
GOGC=off
	gc reverse-complement	2.01u 0.35s 2.37r
	gc_B reverse-complement	1.86u 0.32s 2.19r

nbody -n 50000000
	gcc -O2 nbody.c	21.28u 0.00s 21.31r
	gccgo -O2 nbody.go	80.02u 0.00s 80.05r	# 33% faster
	gc nbody	30.13u 0.00s 30.13r
	gc_B nbody	29.89u 0.01s 29.91r

binary-tree 15 # too slow to use 20
	gcc -O2 binary-tree.c -lm	0.86u 0.00s 0.87r
	gccgo -O2 binary-tree.go	4.82u 0.41s 5.24r	# 2.5X slower
	gccgo -O2 binary-tree-freelist.go	0.00u 0.00s 0.00r
	gc binary-tree	7.23u 0.01s 7.25r	# # -19%
	gc binary-tree-freelist	0.43u 0.00s 0.44r	# -9%

fannkuch 12
	gcc -O2 fannkuch.c	60.17u 0.00s 60.17r
	gccgo -O2 fannkuch.go	78.47u 0.01s 78.49r
	gc fannkuch	128.86u 0.00s 128.96r
	gc_B fannkuch	90.17u 0.00s 90.21r

regex-dna 100000
	gcc -O2 regex-dna.c -lpcre	0.90u 0.00s 0.92r
	gc regex-dna	9.48u 0.01s 9.50r	# 3.1X faster
	gc_B regex-dna	9.08u 0.00s 9.10r	# 3.6X faster

spectral-norm 5500
	gcc -O2 spectral-norm.c -lm	11.48u 0.00s 11.48r
	gccgo -O2 spectral-norm.go	11.68u 0.00s 11.70r
	gc spectral-norm	23.98u 0.00s 23.99r
	gc_B spectral-norm	23.68u 0.00s 23.69r

k-nucleotide 1000000
	gcc -O2 k-nucleotide.c	10.85u 0.04s 10.90r
	gccgo -O2 k-nucleotide.go	25.26u 0.87s 26.14r
	gc k-nucleotide	15.28u 0.06s 15.37r	# restored; mysterious variation continues
	gc_B k-nucleotide	15.97u 0.03s 16.00r

mandelbrot 16000
	gcc -O2 mandelbrot.c	56.12u 0.01s 56.15r
	gccgo -O2 mandelbrot.go	56.86u 0.01s 56.89r
	gc mandelbrot	66.05u 0.00s 66.07r	# -3%
	gc_B mandelbrot	66.06u 0.00s 66.07r	# -3%

meteor 16000
	gcc -O2 meteor-contest.c	0.10u 0.00s 0.10r
	gccgo -O2 meteor-contest.go	0.12u 0.00s 0.12r
	gc meteor-contest	0.17u 0.00s 0.17r
	gc_B meteor-contest	0.15u 0.00s 0.16r

pidigits 10000
	gcc -O2 pidigits.c -lgmp	2.57u 0.00s 2.59r
	gc pidigits	38.27u 0.02s 38.30r	# 1.5X faster
	gc_B pidigits	38.27u 0.02s 38.31r	# 1.5X faster

threadring 50000000
	gcc -O2 threadring.c	37.11u 170.59s 212.75r
	gccgo -O2 threadring.go	89.67u 447.56s 442.55r	# -6.5%
	gc threadring	36.08u 0.04s 36.15r	# +10%

chameneos 6000000
	gcc -O2 chameneosredux.c -lpthread	19.02u 331.08s 90.79r
	gc chameneosredux	12.54u 0.00s 12.55r

