Hi Angel, Just one note: Be aware with VNC, as it can suck significant amount of CPU time in server mode. [ It uses poll method plus bitmap compression in real-time. ] If you also have RDC connection I recommend that for testing.
Another small one: You can remove this line, it's the default, and there is now a different settings to force old version (see in INSTALL): set HB_VISUALC_VER=90 Brgds, Viktor 2009/3/29 Angel Pais <amigo...@adinet.com.uy> > Here new set of results with download link included... > Please other windows users download and post results here > > HTH > Angel > > > Przemyslaw Czerpak escribió: > > Can you also check what will happen if you rebuild Harbour with: >> set HB_USER_CFLAGS=-DHB_FM_STATISTICS_OFF -DHB_FM_WIN_ALLOC >> >> best regards, >> Przemek >> > > > Computer PIV Dual COre 3.0 win 2003 server, used tru VNC > > 03/29/2009 14:04:15 Windows XP 05.02 Build 03790 > Xbase++ (R) Version 1.90 (MT)+ > THREADS: 2 > N_LOOPS: 1000000 > 1 th. 2 th. factor > > ============================================================================ > [ T001: x := L_C ]____________________________________ 0.13 0.12 -> > 1.08 > [ T002: x := L_N ]____________________________________ 0.11 0.09 -> > 1.22 > [ T003: x := L_D ]____________________________________ 0.08 0.08 -> > 1.00 > [ T004: x := S_C ]____________________________________ 0.22 0.20 -> > 1.10 > [ T005: x := S_N ]____________________________________ 0.17 0.16 -> > 1.06 > [ T006: x := S_D ]____________________________________ 0.18 0.28 -> > 0.64 > [ T007: x := M->M_C ]_________________________________ 0.47 0.49 -> > 0.96 > [ T008: x := M->M_N ]_________________________________ 0.34 0.36 -> > 0.94 > [ T009: x := M->M_D ]_________________________________ 0.34 0.36 -> > 0.94 > [ T010: x := M->P_C ]_________________________________ 0.47 0.53 -> > 0.89 > [ T011: x := M->P_N ]_________________________________ 0.58 0.40 -> > 1.45 > [ T012: x := M->P_D ]_________________________________ 0.77 0.81 -> > 0.95 > [ T013: x := F_C ]____________________________________ 0.74 0.70 -> > 1.06 > [ T014: x := F_N ]____________________________________ 0.64 0.58 -> > 1.10 > [ T015: x := F_D ]____________________________________ 0.59 0.64 -> > 0.92 > [ T016: x := o:Args ]_________________________________ 0.42 0.47 -> > 0.89 > [ T017: x := o[2] ]___________________________________ 0.19 0.16 -> > 1.19 > [ T018: round( i / 1000, 2 ) ]________________________ 3.43 3.33 -> > 1.03 > [ T019: str( i / 1000 ) ]_____________________________ 21.55 21.41 -> > 1.01 > [ T020: val( s ) ]____________________________________ 0.96 1.00 -> > 0.96 > [ T021: val( a [ i % 16 + 1 ] ) ]_____________________ 2.38 2.33 -> > 1.02 > [ T022: dtos( d - i % 10000 ) ]_______________________ 3.25 3.25 -> > 1.00 > [ T023: eval( { || i % 16 } ) ]_______________________ 3.01 3.18 -> > 0.95 > [ T024: eval( bc := { || i % 16 } ) ]_________________ 1.78 1.68 -> > 1.06 > [ T025: eval( { |x| x % 16 }, i ) ]___________________ 1.38 1.41 -> > 0.98 > [ T026: eval( bc := { |x| x % 16 }, i ) ]_____________ 1.05 1.09 -> > 0.96 > [ T027: eval( { |x| f1( x ) }, i ) ]__________________ 1.56 1.71 -> > 0.91 > [ T028: eval( bc := { |x| f1( x ) }, i ) ]____________ 1.42 1.55 -> > 0.92 > [ T029: eval( bc := &("{ |x| f1( x ) }"), i ) ]_______ 2.04 1.99 -> > 1.03 > [ T030: x := &( 'f1(' + str(i) + ')' ) ]______________ 60.67 60.14 -> > 1.01 > [ T031: bc := &( '{|x|f1(x)}' ), eval( bc, i ) ]______ 61.03 61.48 -> > 0.99 > [ T032: x := valtype( x ) + valtype( i ) ]___________ 1.02 0.90 -> > 1.13 > [ T033: x := strzero( i % 100, 2 ) $ a[ i % 16 + 1 ] ] 23.69 23.80 -> > 1.00 > [ T034: x := a[ i % 16 + 1 ] == s ]___________________ 0.90 0.94 -> > 0.96 > [ T035: x := a[ i % 16 + 1 ] = s ]____________________ 1.36 1.38 -> > 0.99 > [ T036: x := a[ i % 16 + 1 ] >= s ]___________________ 1.35 1.38 -> > 0.98 > [ T037: x := a[ i % 16 + 1 ] <= s ]___________________ 1.33 1.40 -> > 0.95 > [ T038: x := a[ i % 16 + 1 ] < s ]____________________ 1.32 1.35 -> > 0.98 > [ T039: x := a[ i % 16 + 1 ] > s ]____________________ 1.26 1.36 -> > 0.93 > [ T040: ascan( a, i % 16 ) ]__________________________ 2.11 2.10 -> > 1.00 > [ T041: ascan( a, { |x| x == i % 16 } ) ]_____________ 14.21 14.74 -> > 0.96 > [ T042: iif( i%1000==0, a:={}, ), aadd(a,{i,1,.t.,s, ] 20.09 20.55 -> > 0.98 > [ T043: x := a ]______________________________________ 0.12 0.11 -> > 1.09 > [ T044: x := {} ]_____________________________________ 1.18 1.46 -> > 0.81 > [ T045: f0() ]________________________________________ 0.47 0.35 -> > 1.34 > [ T046: f1( i ) ]_____________________________________ 0.54 0.47 -> > 1.15 > [ T047: f2( c[1...8] ) ]______________________________ 0.42 0.43 -> > 0.98 > [ T048: f2( c[1...40000] ) ]__________________________ 0.45 0.45 -> > 1.00 > [ T049: f2( @c[1...40000] ) ]_________________________ 0.38 0.39 -> > 0.97 > [ T050: f2( @c[1...40000] ), c2 := c ]________________ 0.51 0.60 -> > 0.85 > [ T051: f3( a, a2, s, i, s2, bc, i, n, x ) ]__________ 0.83 0.76 -> > 1.09 > [ T052: f2( a ) ]_____________________________________ 0.41 0.40 -> > 1.02 > [ T053: x := f4() ]___________________________________ 2.72 2.63 -> > 1.03 > [ T054: x := f5() ]___________________________________ 1.22 1.26 -> > 0.97 > [ T055: x := space(16) ]______________________________ 0.85 0.84 -> > 1.01 > [ T056: f_prv( c ) ]__________________________________ 1.43 1.39 -> > 1.03 > > ============================================================================ > [ TOTAL ]_________________________________________252.12 253.42 -> > 0.99 > > ============================================================================ > [ total application time: ]...................................505.66 > [ total real time: ]..........................................505.66 > > It went ok, however only processor 1 was at 100% > > > Compiler and Enviroment: > set HB_COMPILER=msvc > set HB_VISUALC_VER=90 > set HB_USER_CFLAGS=-DHB_FM_STATISTICS_OFF > 03/29/09 14:12:42 Windows Server 2003 / XP x64 5.2.3790 > Harbour 1.1.0dev (Rev. 10718) (MT)+ Microsoft Visual C++ 14.0.24999 > (32-bit) > THREADS: 2 > N_LOOPS: 1000000 > 1 th. 2 th. factor > > ============================================================================ > [ T001: x := L_C ]____________________________________ 0.28 0.25 -> > 1.13 > [ T002: x := L_N ]____________________________________ 0.19 0.16 -> > 1.20 > [ T003: x := L_D ]____________________________________ 0.16 0.19 -> > 0.84 > [ T004: x := S_C ]____________________________________ 0.30 0.27 -> > 1.12 > [ T005: x := S_N ]____________________________________ 0.19 0.19 -> > 0.99 > [ T006: x := S_D ]____________________________________ 0.22 0.19 -> > 1.16 > [ T007: x := M->M_C ]_________________________________ 0.33 0.31 -> > 1.05 > [ T008: x := M->M_N ]_________________________________ 0.25 0.23 -> > 1.07 > [ T009: x := M->M_D ]_________________________________ 0.22 0.22 -> > 1.00 > [ T010: x := M->P_C ]_________________________________ 0.27 0.27 -> > 1.00 > [ T011: x := M->P_N ]_________________________________ 0.22 0.25 -> > 0.88 > [ T012: x := M->P_D ]_________________________________ 0.23 0.24 -> > 1.00 > [ T013: x := F_C ]____________________________________ 0.88 0.83 -> > 1.06 > [ T014: x := F_N ]____________________________________ 0.72 0.66 -> > 1.09 > [ T015: x := F_D ]____________________________________ 0.41 0.38 -> > 1.08 > [ T016: x := o:Args ]_________________________________ 0.64 0.69 -> > 0.93 > [ T017: x := o[2] ]___________________________________ 0.44 0.47 -> > 0.93 > [ T018: round( i / 1000, 2 ) ]________________________ 0.72 0.64 -> > 1.12 > [ T019: str( i / 1000 ) ]_____________________________ 1.80 1.59 -> > 1.13 > [ T020: val( s ) ]____________________________________ 0.94 0.89 -> > 1.05 > [ T021: val( a [ i % 16 + 1 ] ) ]_____________________ 1.58 1.45 -> > 1.09 > [ T022: dtos( d - i % 10000 ) ]_______________________ 1.58 1.31 -> > 1.20 > [ T023: eval( { || i % 16 } ) ]_______________________ 6.41 8.70 -> > 0.74 > [ T024: eval( bc := { || i % 16 } ) ]_________________ 4.83 6.06 -> > 0.80 > [ T025: eval( { |x| x % 16 }, i ) ]___________________ 5.55 7.45 -> > 0.74 > [ T026: eval( bc := { |x| x % 16 }, i ) ]_____________ 4.86 5.99 -> > 0.81 > [ T027: eval( { |x| f1( x ) }, i ) ]__________________ 10.50 14.55 -> > 0.72 > [ T028: eval( bc := { |x| f1( x ) }, i ) ]____________ 9.49 12.95 -> > 0.73 > [ T029: eval( bc := &("{ |x| f1( x ) }"), i ) ]_______ 4.55 5.76 -> > 0.79 > [ T030: x := &( "f1(" + str(i) + ")" ) ]______________ 19.92 24.89 -> > 0.80 > [ T031: bc := &( "{|x|f1(x)}" ), eval( bc, i ) ]______ 22.70 29.44 -> > 0.77 > [ T032: x := valtype( x ) + valtype( i ) ]___________ 1.75 1.84 -> > 0.95 > [ T033: x := strzero( i % 100, 2 ) $ a[ i % 16 + 1 ] ] 2.99 3.19 -> > 0.94 > [ T034: x := a[ i % 16 + 1 ] == s ]___________________ 1.20 1.24 -> > 0.97 > [ T035: x := a[ i % 16 + 1 ] = s ]____________________ 1.30 1.33 -> > 0.98 > [ T036: x := a[ i % 16 + 1 ] >= s ]___________________ 1.33 1.28 -> > 1.04 > [ T037: x := a[ i % 16 + 1 ] <= s ]___________________ 1.30 1.30 -> > 1.00 > [ T038: x := a[ i % 16 + 1 ] < s ]____________________ 1.30 1.41 -> > 0.92 > [ T039: x := a[ i % 16 + 1 ] > s ]____________________ 1.39 1.41 -> > 0.99 > [ T040: ascan( a, i % 16 ) ]__________________________ 1.34 1.23 -> > 1.09 > [ T041: ascan( a, { |x| x == i % 16 } ) ]_____________ 52.09 72.94 -> > 0.71 > [ T042: iif( i%1000==0, a:={}, ) , aadd(a,{i,1,.T.,s ] 4.22 4.84 -> > 0.87 > [ T043: x := a ]______________________________________ 0.33 0.38 -> > 0.87 > [ T044: x := {} ]_____________________________________ 0.97 1.67 -> > 0.58 > [ T045: f0() ]________________________________________ 3.16 3.69 -> > 0.86 > [ T046: f1( i ) ]_____________________________________ 3.78 5.11 -> > 0.74 > [ T047: f2( c[1...8] ) ]______________________________ 4.00 5.17 -> > 0.77 > [ T048: f2( c[1...40000] ) ]__________________________ 3.91 5.09 -> > 0.77 > [ T049: f2( @c[1...40000] ) ]_________________________ 3.83 5.02 -> > 0.76 > [ T050: f2( @c[1...40000] ), c2 := c ]________________ 3.84 5.24 -> > 0.73 > [ T051: f3( a, a2, s, i, s2, bc, i, n, x ) ]__________ 12.30 16.59 -> > 0.74 > [ T052: f2( a ) ]_____________________________________ 3.91 5.11 -> > 0.76 > [ T053: x := f4() ]___________________________________ 6.26 7.95 -> > 0.79 > [ T054: x := f5() ]___________________________________ 3.95 5.53 -> > 0.71 > [ T055: x := space(16) ]______________________________ 1.16 1.22 -> > 0.95 > [ T056: f_prv( c ) ]__________________________________ 5.67 7.53 -> > 0.75 > > ============================================================================ > [ TOTAL ]_________________________________________228.59 294.75 -> > 0.78 > > ============================================================================ > [ total application time: ]...................................689.98 > [ total real time: ]..........................................523.52 > > Both processors at 100%, occasionally 1st. proc was at 60% > > > Compiler and Enviroment: > set HB_COMPILER=msvc > set HB_VISUALC_VER=90 > set HB_USER_CFLAGS=-DHB_FM_STATISTICS_OFF -DHB_FM_WIN_ALLOC > 03/29/09 14:21:25 Windows Server 2003 / XP x64 5.2.3790 > Harbour 1.1.0dev (Rev. 10718) (MT)+ Microsoft Visual C++ 14.0.24999 > (32-bit) > THREADS: 2 > N_LOOPS: 1000000 > 1 th. 2 th. factor > > ============================================================================ > [ T001: x := L_C ]____________________________________ 0.31 0.30 -> > 1.05 > [ T002: x := L_N ]____________________________________ 0.20 0.19 -> > 1.09 > [ T003: x := L_D ]____________________________________ 0.20 0.19 -> > 1.08 > [ T004: x := S_C ]____________________________________ 0.34 0.34 -> > 1.00 > [ T005: x := S_N ]____________________________________ 0.23 0.24 -> > 1.00 > [ T006: x := S_D ]____________________________________ 0.25 0.23 -> > 1.07 > [ T007: x := M->M_C ]_________________________________ 0.38 0.41 -> > 0.92 > [ T008: x := M->M_N ]_________________________________ 0.28 0.30 -> > 0.95 > [ T009: x := M->M_D ]_________________________________ 0.28 0.28 -> > 1.00 > [ T010: x := M->P_C ]_________________________________ 0.36 0.33 -> > 1.09 > [ T011: x := M->P_N ]_________________________________ 0.28 0.28 -> > 1.00 > [ T012: x := M->P_D ]_________________________________ 0.28 0.28 -> > 1.00 > [ T013: x := F_C ]____________________________________ 1.03 1.03 -> > 1.00 > [ T014: x := F_N ]____________________________________ 0.91 0.80 -> > 1.14 > [ T015: x := F_D ]____________________________________ 0.49 0.48 -> > 1.00 > [ T016: x := o:Args ]_________________________________ 0.73 0.83 -> > 0.89 > [ T017: x := o[2] ]___________________________________ 0.55 0.58 -> > 0.94 > [ T018: round( i / 1000, 2 ) ]________________________ 0.91 0.84 -> > 1.07 > [ T019: str( i / 1000 ) ]_____________________________ 2.13 2.03 -> > 1.05 > [ T020: val( s ) ]____________________________________ 1.13 1.05 -> > 1.07 > [ T021: val( a [ i % 16 + 1 ] ) ]_____________________ 1.78 1.73 -> > 1.03 > [ T022: dtos( d - i % 10000 ) ]_______________________ 6.06 4.66 -> > 1.30 > [ T023: eval( { || i % 16 } ) ]_______________________ 16.69 12.03 -> > 1.39 > [ T024: eval( bc := { || i % 16 } ) ]_________________ 14.28 10.22 -> > 1.40 > [ T025: eval( { |x| x % 16 }, i ) ]___________________ 16.49 11.73 -> > 1.40 > [ T026: eval( bc := { |x| x % 16 }, i ) ]_____________ 15.19 11.22 -> > 1.35 > [ T027: eval( { |x| f1( x ) }, i ) ]__________________ 25.86 18.76 -> > 1.38 > [ T028: eval( bc := { |x| f1( x ) }, i ) ]____________ 25.16 18.03 -> > 1.40 > [ T029: eval( bc := &("{ |x| f1( x ) }"), i ) ]_______ 14.58 10.22 -> > 1.43 > [ T030: x := &( "f1(" + str(i) + ")" ) ]______________ 24.30 22.86 -> > 1.06 > [ T031: bc := &( "{|x|f1(x)}" ), eval( bc, i ) ]______ 25.30 24.38 -> > 1.04 > [ T032: x := valtype( x ) + valtype( i ) ]___________ 1.61 1.77 -> > 0.91 > [ T033: x := strzero( i % 100, 2 ) $ a[ i % 16 + 1 ] ] 2.89 2.91 -> > 0.99 > [ T034: x := a[ i % 16 + 1 ] == s ]___________________ 1.19 1.11 -> > 1.07 > [ T035: x := a[ i % 16 + 1 ] = s ]____________________ 1.30 1.34 -> > 0.97 > [ T036: x := a[ i % 16 + 1 ] >= s ]___________________ 1.34 1.33 -> > 1.01 > [ T037: x := a[ i % 16 + 1 ] <= s ]___________________ 1.38 1.31 -> > 1.05 > [ T038: x := a[ i % 16 + 1 ] < s ]____________________ 1.33 1.22 -> > 1.09 > [ T039: x := a[ i % 16 + 1 ] > s ]____________________ 1.34 1.33 -> > 1.01 > [ T040: ascan( a, i % 16 ) ]__________________________ 1.23 1.19 -> > 1.04 > [ T041: ascan( a, { |x| x == i % 16 } ) ]_____________102.17 77.77 -> > 1.31 > [ T042: iif( i%1000==0, a:={}, ) , aadd(a,{i,1,.T.,s ] 6.16 5.24 -> > 1.18 > [ T043: x := a ]______________________________________ 0.33 0.31 -> > 1.05 > [ T044: x := {} ]_____________________________________ 1.02 1.13 -> > 0.90 > [ T045: f0() ]________________________________________ 8.11 5.89 -> > 1.38 > [ T046: f1( i ) ]_____________________________________ 8.83 6.89 -> > 1.28 > [ T047: f2( c[1...8] ) ]______________________________ 8.95 6.45 -> > 1.39 > [ T048: f2( c[1...40000] ) ]__________________________ 8.92 6.84 -> > 1.30 > [ T049: f2( @c[1...40000] ) ]_________________________ 8.72 6.83 -> > 1.28 > [ T050: f2( @c[1...40000] ), c2 := c ]________________ 9.39 6.86 -> > 1.37 > [ T051: f3( a, a2, s, i, s2, bc, i, n, x ) ]__________ 18.05 15.31 -> > 1.18 > [ T052: f2( a ) ]_____________________________________ 8.95 6.89 -> > 1.30 > [ T053: x := f4() ]___________________________________ 11.74 9.58 -> > 1.23 > [ T054: x := f5() ]___________________________________ 9.11 6.84 -> > 1.33 > [ T055: x := space(16) ]______________________________ 1.08 1.06 -> > 1.02 > [ T056: f_prv( c ) ]__________________________________ 14.00 10.42 -> > 1.34 > > ============================================================================ > [ TOTAL ]_________________________________________436.06 344.65 -> > 1.27 > > ============================================================================ > [ total application time: ]..................................1025.06 > [ total real time: ]..........................................780.83 > > Both processors at 100% most of the time, slighttly more used second than > first > > > Tests made with: > > http://rapidshare.com/files/215014183/speedhb.zip.html > MD5: BE33161B84F0C8815AAB628C1341CC55 > > Download and test yourself on true multiprocessor windows pc. > > _______________________________________________ > Harbour mailing list > Harbour@harbour-project.org > http://lists.harbour-project.org/mailman/listinfo/harbour > > -- Viktor
_______________________________________________ Harbour mailing list Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour