Hi Przemek,

[resent to avoid line wrapping]

P4 2.66/800 HT, XP, MSVS2008 -gc3:

Startup loop to increase CPU clock...
10/03/08 22:23:07 Windows XP 5.1.2600 Service Pack 3
Harbour 1.1.0dev (Rev. 9539) (MT) Microsoft Visual C 15.0.26569 (32 bit)
N_LOOPS =    1000000

                                                     speedtst
                                           -gc0    -gc3    -gc0    -gc3
                                                             MT      MT
-----------------------------------------------------------------------
[ empty loop overhead ]....................0.13 ...0.03 ...0.09 ...0.06
=============================================== ======= ======= =======
[ x := L_C ]...............................0.20 ...0.13 ..29.09 ...5.27
[ x := L_N ]...............................0.05 ...0.05 ..11.69 ...1.53
[ x := L_D ]...............................0.02 ...0.03 ..16.94 ...3.92
[ x := S_C ]...............................0.17 ...0.14 ..27.41 ...5.06
[ x := S_N ]...............................0.06 ...0.03 ..26.14 ...3.95
[ x := S_D ]...............................0.05 ...0.00 ..23.11 ...4.23
[ x := M_C ]...............................0.20 ...0.11 ..24.00 ...6.58
[ x := M_N ]...............................0.00 ...0.13 ..19.19 ...6.88
[ x := M_D ]...............................0.06 ...0.05 ..23.89 ...4.41
[ x := P_C ]...............................0.22 ...0.13 ..35.14 ..12.75
[ x := P_N ]...............................0.03 ...0.08 ..36.55 ...4.50
[ x := P_D ]...............................0.06 ...0.02 ..23.91 ...5.83
[ x := F_C ]...............................0.77 ...0.39 ..55.25 ..41.00
[ x := F_N ]...............................0.55 ...0.30 ..47.52 ..23.03
[ x := F_D ]...............................0.23 ...0.08 ..24.73 ...7.06
[ x := o:GenCode ].........................0.53 ...0.16 ..38.81 ..19.94
[ x := 0 ].................................0.02 ...0.06 ..20.70 ...1.67
[ round( i / 1000, 2 ) ]...................0.64 ...0.47 ..43.63 ..23.92
[ str( i / 1000 ) ]........................1.61 ...1.27 ..81.23 ..53.89
[ val( s ) ]...............................0.80 ...0.78 ..39.22 ..28.03
[ val( a [ i % 16 + 1 ] ) ]................1.53 ...1.39 ..55.86 ..32.16
[ dtos( d - i % 10000 ) ]..................1.56 ...1.14 ..93.64 ..60.39
[ eval( { || i % 16 } ) ]..................2.53 ...2.06 .104.80 ..77.70
[ eval( bc := { || i % 16 } ) ]............0.83 ...0.83 ..53.44 ..14.50
[ eval( { |x| x % 16 }, i ) ]..............1.73 ...1.42 ..99.72 ..62.42
[ eval( bc := { |x| x % 16 }, i ) ]........0.88 ...0.78 ..46.69 ..12.03
[ eval( { |x| f1( x ) }, i ) ].............1.81 ...1.63 .102.41 ..58.31
[ eval( bc := { |x| f1( x ) }, i ) ].......0.45 ...0.80 ..56.55 ..11.64
[ x := &( "f1(" + str(i) + ")" ) ].........3.81 ...9.55 .149.52 .112.41
[ bc := &( "{|x|f1(x)}" ); eval( bc, i ) ..9.13 ..12.36 .150.80 .116.25
[ x := valtype( x ) +  valtype( i ) ]......1.00 ...0.94 ..88.27 ..56.63
[ x := strzero( i % 100, 2 ) $ a[ i % 16 ..1.59 ...1.58 ..95.48 ..69.97
[ x := a[ i % 16 + 1 ] == s ]..............0.70 ...0.73 ..46.44 ..24.19
[ x := a[ i % 16 + 1 ] = s ]...............0.73 ...0.70 ..56.73 ..27.17
[ x := a[ i % 16 + 1 ] >= s ]..............0.83 ...0.88 ..52.41 ..27.44
[ x := a[ i % 16 + 1 ] <= s ]..............0.94 ...0.84 ..53.38 ..26.97
[ x := a[ i % 16 + 1 ] < s ]...............0.73 ...0.92 ..54.41 ..27.22
[ x := a[ i % 16 + 1 ] > s ]...............0.78 ...0.70 ..54.78 ..27.38
[ ascan( a, i % 16 ) ].....................0.50 ...0.72 ..48.84 ..25.19
[ ascan( a, { |x| x == i % 16 } ) ]........6.92 ...6.58 .119.34 ..82.98
[ if i%1000==0;a:={};end; aadd(a,{i,1,.T...3.09 ...2.92 .126.52 ..89.03
[ x := a ].................................0.14 ...0.17 ..28.50 ..13.97
[ x := {} ]................................0.77 ...0.55 ..90.13 ..62.22
[ f0() ]...................................0.09 ...0.11 ..29.58 ..13.09
[ f1( i ) ]................................0.14 ...0.13 ..45.97 ..13.61
[ f2( c[1...8] ) ].........................0.31 ...0.28 ..44.81 ..18.41
[ f2( c[1...40000] ) ].....................0.28 ...0.23 ..28.41 ..17.34
[ f2( @c[1...40000] ) ]....................0.27 ...0.22 ..44.02 ..19.08
[ f2( @c[1...40000] ), c2 := c ]...........0.27 ...0.23 ..41.41 ..16.81
[ f3( a, a2, s, i, s2, bc, i, n, x ) ].....0.95 ...0.89 ..45.78 ..25.56
[ f2( a ) ]................................0.38 ...0.33 ..45.08 ..14.23
[ x := f4() ]..............................1.61 ...1.28 ..94.91 ..58.11
[ x := f5() ]..............................0.70 ...0.55 ..96.70 ..49.44
=============================================== ======= ======= =======
[ total application time: ]...............61.00 ..60.50 .154.64 .123.61
[ total real time: ]......................57.73 ..51.34 ..78.61 ..63.39

Brgds,
Viktor

On 2008.10.03., at 21:53, Przemyslaw Czerpak wrote:

2008-10-03 21:53 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
- harbour/tests/speedtst.prg
+ harbour/tests/speedold.prg
* renamed old speed test - I left it because some other xbase compiler
    cannot compiple the new one due to not Clipper compatible PP

+ harbour/tests/speedtst.prg
* added new speed test which can also measure mutlithread performance. When linked with MT HVM version then it can be executed with optional
    parameter which causes that each test loop is executed by separate
    thread. Please make such tests on different platforms.

best regards
Przemek
_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to