On the effect of branch mispredictions in the Squeak VM

John M McIntosh johnmci at smalltalkconsulting.com
Mon Jul 7 21:37:02 UTC 2003


 > > John, one question about your results: How do they measure
  > > up with the results coming from #tinyBenchmarks? I don't
  > > think there are very many bytecodes involved either so
  > > (in theory) the results obtained should be exactly in line.
  > >

Well given the codewarrior nongnuified 3.5.2b1 results
10	0	0
100	0	1
1000	1	1
10000	11	9
100000	111	100
1000000	1025	1020
10000000	10261	10198

(450000000 / 10.261) truncated asStringWithCommas  ''
=> 43,855,374 bytecodes/sec
(450000000 / 10.198) truncated asStringWithCommas
=> 44,126,299 bytecodes/sec

tinybenchmarks for this vm running under os-x classic mode is

'43835616 bytecodes/sec; 1555214 sends/sec'
'43537414 bytecodes/sec; 1559586 sends/sec'
'44168391 bytecodes/sec; 1563984 sends/sec'
'43835616 bytecodes/sec; 1553761 sends/sec'
'44046799 bytecodes/sec; 1565455 sends/sec'
'44107512 bytecodes/sec; 1559586 sends/sec'
'43986254 bytecodes/sec; 1568406 sends/sec'
'44046799 bytecodes/sec; 1536545 sends/sec'
'44260027 bytecodes/sec; 1575832 sends/sec'
'43925875 bytecodes/sec; 1562515 sends/sec'

The gnuified gcc 3.3 os-x carbon version is of course way better

'50793650 bytecodes/sec; 1860771 sends/sec'
'51240992 bytecodes/sec; 1875025 sends/sec'
'50914876 bytecodes/sec; 1871116 sends/sec'
'50632911 bytecodes/sec; 1862058 sends/sec'
'51200000 bytecodes/sec; 1871116 sends/sec'
'51323175 bytecodes/sec; 1860771 sends/sec'
'51200000 bytecodes/sec; 1875025 sends/sec'
'51036682 bytecodes/sec; 1860771 sends/sec'
'51364365 bytecodes/sec; 1848000 sends/sec'
'51036682 bytecodes/sec; 1869817 sends/sec'
--
======================================================================== 
===
John M. McIntosh <johnmci at smalltalkconsulting.com> 1-800-477-2659
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
======================================================================== 
===



More information about the Squeak-dev mailing list