[Harbour] 2008-10-03 21:53 UTC+0200 Przemyslaw Czerpak
(druzus/at/priv.onet.pl)
Przemyslaw Czerpak
druzus at acn.waw.pl
Fri Oct 3 17:27:01 EDT 2008
On Fri, 03 Oct 2008, Szak�ts Viktor wrote:
Hi Viktor,
> P4 2.66/800 HT, XP, MSVS2008 -gc3:
I guess that HT means Hyper Thread CPU with two cores.
Am I right?
> 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
Thank you for your tests. Just a small question.
Is the 1-st and 2-nd column for ST HVM or is it also MT HVM and only
speedtst was run without additional parameter so all tests were executed
by single thread only?
best regards
Przemek
More information about the Harbour
mailing list