with 2 threads (The Harbour results look this weird on every run):
03/16/2009 20:08:01 Windows XP 05.01 Build 02600 Service Pack 3
Xbase++ (R) Version 1.90 (MT)+
THREADS: 2
N_LOOPS: 1000000
[ T000: empty loop overhead ]...................................0.03
====================================================================
[ T001: x := L_C ]..............................................0.04
[ T002: x := L_N ]..............................................0.01
[ T003: x := L_D ]..............................................0.00
[ T004: x := S_C ]..............................................0.08
[ T005: x := S_N ]..............................................0.05
[ T006: x := S_D ]..............................................0.05
[ T007: x := M_C ]..............................................0.23
[ T008: x := M_N ]..............................................0.19
[ T009: x := M_D ]..............................................0.19
[ T010: x := P_C ]..............................................0.25
[ T011: x := P_N ]..............................................0.19
[ T012: x := P_D ]..............................................0.19
[ T013: x := F_C ]..............................................0.39
[ T014: x := F_N ]..............................................0.32
[ T015: x := F_D ]..............................................0.33
[ T016: x := o:Args ]...........................................0.22
[ T017: x := o:Args ]...........................................0.23
[ T018: round( i / 1000, 2 ) ]..................................1.60
[ T019: str( i / 1000 ) ]......................................10.00
[ T020: val( s ) ]..............................................0.45
[ T021: val( a [ i % 16 + 1 ] ) ]...............................1.11
[ T022: dtos( d - i % 10000 ) ].................................1.52
[ T023: eval( { || i % 16 } ) ].................................1.56
[ T024: eval( bc := { || i % 16 } ) ]...........................0.96
[ T025: eval( { |x| x % 16 }, i ) ].............................0.67
[ T026: eval( bc := { |x| x % 16 }, i ) ].......................0.53
[ T027: eval( { |x| f1( x ) }, i ) ]............................0.85
[ T028: eval( bc := { |x| f1( x ) }, i ) ]......................0.73
[ T029: x := &( "f1(" + str(i) + ")" ) ].......................25.36
[ T030: bc := &( "{|x|f1(x)}" ), eval( bc, i ) ]...............25.38
[ T031: x := valtype( x ) + valtype( i ) ].....................0.42
[ T032: x := strzero( i % 100, 2 ) $ a[ i % 16 + 1 ] ].........10.27
[ T033: x := a[ i % 16 + 1 ] == s ].............................0.41
[ T034: x := a[ i % 16 + 1 ] = s ]..............................0.58
[ T035: x := a[ i % 16 + 1 ] >= s ].............................0.58
[ T036: x := a[ i % 16 + 1 ] <= s ].............................0.59
[ T037: x := a[ i % 16 + 1 ] < s ]..............................0.58
[ T038: x := a[ i % 16 + 1 ] > s ]..............................0.60
[ T039: ascan( a, i % 16 ) ]....................................1.00
[ T040: ascan( a, { |x| x == i % 16 } ) ].......................7.34
[ T041: iif( i%1000==0, a:={}, ), aadd(a,{i,1,.t.,s,s2,a2, ]....9.02
[ T042: x := a ]................................................0.03
[ T043: x := {} ]...............................................0.46
[ T044: f0() ]..................................................0.22
[ T045: f1( i ) ]...............................................0.22
[ T046: f2( c[1...8] ) ]........................................0.26
[ T047: f2( c[1...40000] ) ]....................................0.22
[ T048: f2( @c[1...40000] ) ]...................................0.22
[ T049: f2( @c[1...40000] ), c2 := c ]..........................0.25
[ T050: f3( a, a2, s, i, s2, bc, i, n, x ) ]....................0.35
[ T051: f2( a ) ]...............................................0.17
[ T052: x := f4() ].............................................1.47
[ T053: x := f5() ].............................................0.59
[ T054: x := space(16) ]........................................0.41
[ T055: f_prv( c ) ]............................................0.66
====================================================================
[ total application time: ]...................................112.27
[ total real time: ]..........................................112.27
03/16/09 20:06:19 Windows XP 5.1.2600 Service Pack 3
Harbour 1.1.0dev (Rev. 10601) (MT)+ Microsoft Visual C 14.0.24999 (32-bit)
THREADS: 2
N_LOOPS: 1000000
[ T000: empty loop overhead ]...................................0.05
====================================================================
[ T001: x := L_C ]..............................................0.84
[ T002: x := L_N ]..............................................0.38
[ T003: x := L_D ]..............................................0.36
[ T004: x := S_C ]..............................................1.02
[ T005: x := S_N ]..............................................0.45
[ T006: x := S_D ]..............................................0.48
[ T007: x := M_C ]..............................................1.28
[ T008: x := M_N ]..............................................0.66
[ T009: x := M_D ]..............................................0.70
[ T010: x := P_C ]..............................................1.27
[ T011: x := P_N ]..............................................0.61
[ T012: x := P_D ]..............................................0.64
[ T013: x := F_C ]..............................................2.03
[ T014: x := F_N ]..............................................1.61
[ T015: x := F_D ]..............................................1.03
[ T016: x := o:Args ]...........................................1.70
[ T017: x := o[2] ].............................................1.25
[ T018: round( i / 1000, 2 ) ]..................................1.44
[ T019: str( i / 1000 ) ].......................................3.94
[ T020: val( s ) ]..............................................2.28
[ T021: val( a [ i % 16 + 1 ] ) ]...............................3.72
[ T022: dtos( d - i % 10000 ) ].................................3.78
[ T023: eval( { || i % 16 } ) ].................................6.50
[ T024: eval( bc := { || i % 16 } ) ]...........................2.39
[ T025: eval( { |x| x % 16 }, i ) ].............................4.50
[ T026: eval( bc := { |x| x % 16 }, i ) ].......................2.36
[ T027: eval( { |x| f1( x ) }, i ) ]............................4.31
[ T028: eval( bc := { |x| f1( x ) }, i ) ]......................2.59
[ T029: x := &( "f1(" + str(i) + ")" ) ].......................43.30
[ T030: bc := &( "{|x|f1(x)}" ), eval( bc, i ) ]...............47.59
[ T031: x := valtype( x ) + valtype( i ) ].....................4.48
[ T032: x := strzero( i % 100, 2 ) $ a[ i % 16 + 1 ] ]..........5.94
[ T033: x := a[ i % 16 + 1 ] == s ].............................2.75
[ T034: x := a[ i % 16 + 1 ] = s ]..............................3.00
[ T035: x := a[ i % 16 + 1 ] >= s ].............................3.20
[ T036: x := a[ i % 16 + 1 ] <= s ].............................3.20
[ T037: x := a[ i % 16 + 1 ] < s ]..............................3.17
[ T038: x := a[ i % 16 + 1 ] > s ]..............................3.20
[ T039: ascan( a, i % 16 ) ]....................................2.11
[ T040: ascan( a, { |x| x == i % 16 } ) ]......................22.83
[ T041: iif( i%1000==0, a:={}, ) , aadd(a,{i,1,.T.,s,s2,a2 ]....8.27
[ T042: x := a ]................................................0.59
[ T043: x := {} ]...............................................2.19
[ T044: f0() ]..................................................0.56
[ T045: f1( i ) ]...............................................0.78
[ T046: f2( c[1...8] ) ]........................................1.05
[ T047: f2( c[1...40000] ) ]....................................1.05
[ T048: f2( @c[1...40000] ) ]...................................1.00
[ T049: f2( @c[1...40000] ), c2 := c ]..........................1.19
[ T050: f3( a, a2, s, i, s2, bc, i, n, x ) ]....................2.98
[ T051: f2( a ) ]...............................................1.08
[ T052: x := f4() ].............................................7.08
[ T053: x := f5() ].............................................2.64
[ T054: x := space(16) ]........................................2.61
[ T055: f_prv( c ) ]............................................2.08
====================================================================
[ total application time: ]...................................118.78
[ total real time: ]...........................................61.03
_______________________________________________
Harbour mailing list
[email protected]
http://lists.harbour-project.org/mailman/listinfo/harbour