On Tuesday 07 October 2008 06:28:18 am Przemyslaw Czerpak wrote: > with -gc3 switch, f.e.: > hbmk -n -w -es2 -gc3 -mt speedtst > for i in 1 2 4 6 8; do ./speedtst --exclude=mem --scale --thread:$i; > done
Here it is with -gc3. The recompile will have to wait until after I get home from work. with -gc3 switch, f.e.: hbmk -n -w -es2 -gc3 -mt speedtst for i in 1 2 4 6 8; do ./speedtst --exclude=mem --scale --thread:$i; done [EMAIL PROTECTED] tests]$ ./speedtst --exclude=mem --scale --thread=1 10/07/08 08:03:51 Linux 2.6.26.3-29.fc9.i686 i686 Harbour 1.1.0dev (Rev. 9564) (MT)+ GNU C 4.3 (32 bit) THREADS: 1 N_LOOPS: 1000000 excluded tests: 029 030 023 025 027 040 041 043 052 053 019 022 031 032 054 1 th. 1 th. factor ============================================================================ [ T001: x := L_C ]____________________________________ 0.11 0.08 -> 1.30 [ T002: x := L_N ]____________________________________ 0.08 0.07 -> 1.22 [ T003: x := L_D ]____________________________________ 0.07 0.07 -> 1.00 [ T004: x := S_C ]____________________________________ 0.10 0.10 -> 0.99 [ T005: x := S_N ]____________________________________ 0.10 0.10 -> 1.00 [ T006: x := S_D ]____________________________________ 0.10 0.10 -> 1.00 [ T007: x := M_C ]____________________________________ 0.11 0.13 -> 0.88 [ T008: x := M_N ]____________________________________ 0.11 0.11 -> 0.99 [ T009: x := M_D ]____________________________________ 0.11 0.12 -> 0.93 [ T010: x := P_C ]____________________________________ 0.13 0.13 -> 0.99 [ T011: x := P_N ]____________________________________ 0.11 0.10 -> 1.08 [ T012: x := P_D ]____________________________________ 0.13 0.10 -> 1.30 [ T013: x := F_C ]____________________________________ 0.27 0.21 -> 1.29 [ T014: x := F_N ]____________________________________ 0.27 0.27 -> 1.00 [ T015: x := F_D ]____________________________________ 0.14 0.14 -> 1.00 [ T016: x := o:GenCode ]______________________________ 0.24 0.24 -> 0.99 [ T017: x := o[8] ]___________________________________ 0.16 0.16 -> 0.99 [ T018: round( i / 1000, 2 ) ]________________________ 0.33 0.33 -> 1.00 [ T020: val( s ) ]____________________________________ 0.33 0.33 -> 1.00 [ T021: val( a [ i % 16 + 1 ] ) ]_____________________ 0.51 0.51 -> 1.00 [ T024: eval( bc := { || i % 16 } ) ]_________________ 0.39 0.39 -> 0.98 [ T026: eval( bc := { |x| x % 16 }, i ) ]_____________ 0.43 0.38 -> 1.12 [ T028: eval( bc := { |x| f1( x ) }, i ) ]____________ 0.53 0.48 -> 1.10 [ T033: x := a[ i % 16 + 1 ] == s ]___________________ 0.37 0.36 -> 1.04 [ T034: x := a[ i % 16 + 1 ] = s ]____________________ 0.40 0.38 -> 1.04 [ T035: x := a[ i % 16 + 1 ] >= s ]___________________ 0.40 0.40 -> 1.00 [ T036: x := a[ i % 16 + 1 ] <= s ]___________________ 0.38 0.38 -> 1.00 [ T037: x := a[ i % 16 + 1 ] < s ]____________________ 0.38 0.38 -> 1.00 [ T038: x := a[ i % 16 + 1 ] > s ]____________________ 0.39 0.38 -> 1.01 [ T039: ascan( a, i % 16 ) ]__________________________ 0.43 0.47 -> 0.91 [ T042: x := a ]______________________________________ 0.09 0.09 -> 1.00 [ T044: f0() ]________________________________________ 0.15 0.15 -> 1.00 [ T045: f1( i ) ]_____________________________________ 0.21 0.20 -> 1.08 [ T046: f2( c[1...8] ) ]______________________________ 0.20 0.20 -> 1.00 [ T047: f2( c[1...40000] ) ]__________________________ 0.20 0.20 -> 1.00 [ T048: f2( @c[1...40000] ) ]_________________________ 0.20 0.20 -> 1.00 [ T049: f2( @c[1...40000] ), c2 := c ]________________ 0.25 0.24 -> 1.06 [ T050: f3( a, a2, s, i, s2, bc, i, n, x ) ]__________ 0.45 0.45 -> 1.00 [ T051: f2( a ) ]_____________________________________ 0.22 0.20 -> 1.07 ============================================================================ [ TOTAL ]_________________________________________ 9.54 9.32 -> 1.02 ============================================================================ [ total application time: ]....................................18.86 [ total real time: ]...........................................18.87 [EMAIL PROTECTED] tests]$ ./speedtst --exclude=mem --scale --thread=2 10/07/08 08:04:14 Linux 2.6.26.3-29.fc9.i686 i686 Harbour 1.1.0dev (Rev. 9564) (MT)+ GNU C 4.3 (32 bit) THREADS: 2 N_LOOPS: 1000000 excluded tests: 029 030 023 025 027 040 041 043 052 053 019 022 031 032 054 1 th. 2 th. factor ============================================================================ [ T001: x := L_C ]____________________________________ 0.20 0.09 -> 2.14 [ T002: x := L_N ]____________________________________ 0.14 0.08 -> 1.76 [ T003: x := L_D ]____________________________________ 0.14 0.09 -> 1.43 [ T004: x := S_C ]____________________________________ 0.20 0.26 -> 0.77 [ T005: x := S_N ]____________________________________ 0.18 0.10 -> 1.79 [ T006: x := S_D ]____________________________________ 0.18 0.10 -> 1.75 [ T007: x := M_C ]____________________________________ 0.23 0.12 -> 1.82 [ T008: x := M_N ]____________________________________ 0.20 0.10 -> 1.97 [ T009: x := M_D ]____________________________________ 0.20 0.12 -> 1.73 [ T010: x := P_C ]____________________________________ 0.23 0.11 -> 2.00 [ T011: x := P_N ]____________________________________ 0.20 0.12 -> 1.72 [ T012: x := P_D ]____________________________________ 0.20 0.13 -> 1.59 [ T013: x := F_C ]____________________________________ 0.49 0.27 -> 1.84 [ T014: x := F_N ]____________________________________ 0.54 0.29 -> 1.88 [ T015: x := F_D ]____________________________________ 0.29 0.17 -> 1.68 [ T016: x := o:GenCode ]______________________________ 0.49 0.25 -> 1.96 [ T017: x := o[8] ]___________________________________ 0.32 0.19 -> 1.74 [ T018: round( i / 1000, 2 ) ]________________________ 0.63 0.33 -> 1.88 [ T020: val( s ) ]____________________________________ 0.65 0.35 -> 1.87 [ T021: val( a [ i % 16 + 1 ] ) ]_____________________ 1.04 0.55 -> 1.89 [ T024: eval( bc := { || i % 16 } ) ]_________________ 0.82 0.66 -> 1.25 [ T026: eval( bc := { |x| x % 16 }, i ) ]_____________ 0.75 0.55 -> 1.37 [ T028: eval( bc := { |x| f1( x ) }, i ) ]____________ 0.90 0.64 -> 1.41 [ T033: x := a[ i % 16 + 1 ] == s ]___________________ 0.74 0.53 -> 1.39 [ T034: x := a[ i % 16 + 1 ] = s ]____________________ 0.80 0.44 -> 1.85 [ T035: x := a[ i % 16 + 1 ] >= s ]___________________ 0.80 0.44 -> 1.81 [ T036: x := a[ i % 16 + 1 ] <= s ]___________________ 0.81 0.43 -> 1.87 [ T037: x := a[ i % 16 + 1 ] < s ]____________________ 0.78 0.40 -> 1.95 [ T038: x := a[ i % 16 + 1 ] > s ]____________________ 0.79 0.47 -> 1.68 [ T039: ascan( a, i % 16 ) ]__________________________ 0.88 0.50 -> 1.76 [ T042: x := a ]______________________________________ 0.18 0.10 -> 1.83 [ T044: f0() ]________________________________________ 0.31 0.17 -> 1.83 [ T045: f1( i ) ]_____________________________________ 0.39 0.21 -> 1.86 [ T046: f2( c[1...8] ) ]______________________________ 0.39 0.21 -> 1.89 [ T047: f2( c[1...40000] ) ]__________________________ 0.39 0.21 -> 1.90 [ T048: f2( @c[1...40000] ) ]_________________________ 0.39 0.21 -> 1.89 [ T049: f2( @c[1...40000] ), c2 := c ]________________ 0.48 0.25 -> 1.91 [ T050: f3( a, a2, s, i, s2, bc, i, n, x ) ]__________ 0.92 0.48 -> 1.91 [ T051: f2( a ) ]_____________________________________ 0.41 0.22 -> 1.86 ============================================================================ [ TOTAL ]_________________________________________ 18.70 10.95 -> 1.71 ============================================================================ [ total application time: ]....................................39.75 [ total real time: ]...........................................29.66 [EMAIL PROTECTED] tests]$ ./speedtst --exclude=mem --scale --thread=4 10/07/08 08:04:48 Linux 2.6.26.3-29.fc9.i686 i686 Harbour 1.1.0dev (Rev. 9564) (MT)+ GNU C 4.3 (32 bit) THREADS: 4 N_LOOPS: 1000000 excluded tests: 029 030 023 025 027 040 041 043 052 053 019 022 031 032 054 1 th. 4 th. factor ============================================================================ [ T001: x := L_C ]____________________________________ 0.40 0.10 -> 4.03 [ T002: x := L_N ]____________________________________ 0.28 0.09 -> 3.05 [ T003: x := L_D ]____________________________________ 0.27 0.09 -> 3.04 [ T004: x := S_C ]____________________________________ 0.39 0.50 -> 0.79 [ T005: x := S_N ]____________________________________ 0.35 0.11 -> 3.33 [ T006: x := S_D ]____________________________________ 0.35 0.10 -> 3.40 [ T007: x := M_C ]____________________________________ 0.49 0.18 -> 2.77 [ T008: x := M_N ]____________________________________ 0.47 0.12 -> 3.98 [ T009: x := M_D ]____________________________________ 0.42 0.12 -> 3.47 [ T010: x := P_C ]____________________________________ 0.46 0.12 -> 3.89 [ T011: x := P_N ]____________________________________ 0.40 0.12 -> 3.41 [ T012: x := P_D ]____________________________________ 0.40 0.16 -> 2.47 [ T013: x := F_C ]____________________________________ 0.90 0.31 -> 2.88 [ T014: x := F_N ]____________________________________ 1.09 0.28 -> 3.87 [ T015: x := F_D ]____________________________________ 0.58 0.16 -> 3.60 [ T016: x := o:GenCode ]______________________________ 0.94 0.26 -> 3.60 [ T017: x := o[8] ]___________________________________ 0.65 0.18 -> 3.65 [ T018: round( i / 1000, 2 ) ]________________________ 1.38 0.34 -> 4.02 [ T020: val( s ) ]____________________________________ 1.44 0.36 -> 3.98 [ T021: val( a [ i % 16 + 1 ] ) ]_____________________ 2.16 0.70 -> 3.06 [ T024: eval( bc := { || i % 16 } ) ]_________________ 1.59 1.23 -> 1.29 [ T026: eval( bc := { |x| x % 16 }, i ) ]_____________ 1.57 0.97 -> 1.61 [ T028: eval( bc := { |x| f1( x ) }, i ) ]____________ 1.83 1.10 -> 1.66 [ T033: x := a[ i % 16 + 1 ] == s ]___________________ 1.46 0.40 -> 3.61 [ T034: x := a[ i % 16 + 1 ] = s ]____________________ 1.55 0.41 -> 3.77 [ T035: x := a[ i % 16 + 1 ] >= s ]___________________ 1.60 0.52 -> 3.10 [ T036: x := a[ i % 16 + 1 ] <= s ]___________________ 1.61 0.46 -> 3.53 [ T037: x := a[ i % 16 + 1 ] < s ]____________________ 1.64 0.46 -> 3.58 [ T038: x := a[ i % 16 + 1 ] > s ]____________________ 1.60 0.56 -> 2.85 [ T039: ascan( a, i % 16 ) ]__________________________ 1.88 0.46 -> 4.08 [ T042: x := a ]______________________________________ 0.36 0.17 -> 2.14 [ T044: f0() ]________________________________________ 0.75 0.18 -> 4.16 [ T045: f1( i ) ]_____________________________________ 0.90 0.23 -> 3.99 [ T046: f2( c[1...8] ) ]______________________________ 0.89 0.22 -> 4.02 [ T047: f2( c[1...40000] ) ]__________________________ 0.91 0.22 -> 4.10 [ T048: f2( @c[1...40000] ) ]_________________________ 0.89 0.22 -> 4.03 [ T049: f2( @c[1...40000] ), c2 := c ]________________ 1.08 0.27 -> 4.02 [ T050: f3( a, a2, s, i, s2, bc, i, n, x ) ]__________ 1.87 0.48 -> 3.87 [ T051: f2( a ) ]_____________________________________ 0.89 0.23 -> 3.91 ============================================================================ [ TOTAL ]_________________________________________ 38.69 13.19 -> 2.93 ============================================================================ [ total application time: ]....................................88.62 [ total real time: ]...........................................51.88 [EMAIL PROTECTED] tests]$ ./speedtst --exclude=mem --scale --thread=6 10/07/08 08:05:44 Linux 2.6.26.3-29.fc9.i686 i686 Harbour 1.1.0dev (Rev. 9564) (MT)+ GNU C 4.3 (32 bit) THREADS: 6 N_LOOPS: 1000000 excluded tests: 029 030 023 025 027 040 041 043 052 053 019 022 031 032 054 1 th. 6 th. factor ============================================================================ [ T001: x := L_C ]____________________________________ 0.57 0.16 -> 3.45 [ T002: x := L_N ]____________________________________ 0.44 0.14 -> 3.27 [ T003: x := L_D ]____________________________________ 0.43 0.16 -> 2.70 [ T004: x := S_C ]____________________________________ 0.62 0.74 -> 0.84 [ T005: x := S_N ]____________________________________ 0.58 0.18 -> 3.32 [ T006: x := S_D ]____________________________________ 0.55 0.17 -> 3.22 [ T007: x := M_C ]____________________________________ 0.74 0.26 -> 2.83 [ T008: x := M_N ]____________________________________ 0.67 0.19 -> 3.57 [ T009: x := M_D ]____________________________________ 0.65 0.20 -> 3.22 [ T010: x := P_C ]____________________________________ 0.69 0.22 -> 3.17 [ T011: x := P_N ]____________________________________ 0.65 0.19 -> 3.40 [ T012: x := P_D ]____________________________________ 0.65 0.20 -> 3.30 [ T013: x := F_C ]____________________________________ 1.58 0.45 -> 3.53 [ T014: x := F_N ]____________________________________ 1.61 0.45 -> 3.61 [ T015: x := F_D ]____________________________________ 0.92 0.29 -> 3.18 [ T016: x := o:GenCode ]______________________________ 1.42 0.49 -> 2.89 [ T017: x := o[8] ]___________________________________ 1.01 0.30 -> 3.31 [ T018: round( i / 1000, 2 ) ]________________________ 1.95 0.51 -> 3.80 [ T020: val( s ) ]____________________________________ 2.27 0.58 -> 3.95 [ T021: val( a [ i % 16 + 1 ] ) ]_____________________ 3.24 0.87 -> 3.71 [ T024: eval( bc := { || i % 16 } ) ]_________________ 2.38 1.84 -> 1.29 [ T026: eval( bc := { |x| x % 16 }, i ) ]_____________ 2.40 1.53 -> 1.56 [ T028: eval( bc := { |x| f1( x ) }, i ) ]____________ 2.71 1.69 -> 1.60 [ T033: x := a[ i % 16 + 1 ] == s ]___________________ 2.40 0.72 -> 3.34 [ T034: x := a[ i % 16 + 1 ] = s ]____________________ 2.49 0.74 -> 3.35 [ T035: x := a[ i % 16 + 1 ] >= s ]___________________ 2.54 0.80 -> 3.16 [ T036: x := a[ i % 16 + 1 ] <= s ]___________________ 2.60 0.76 -> 3.42 [ T037: x := a[ i % 16 + 1 ] < s ]____________________ 2.42 0.71 -> 3.43 [ T038: x := a[ i % 16 + 1 ] > s ]____________________ 2.55 0.78 -> 3.25 [ T039: ascan( a, i % 16 ) ]__________________________ 2.66 0.77 -> 3.46 [ T042: x := a ]______________________________________ 0.60 0.28 -> 2.17 [ T044: f0() ]________________________________________ 0.98 0.29 -> 3.37 [ T045: f1( i ) ]_____________________________________ 1.17 0.33 -> 3.53 [ T046: f2( c[1...8] ) ]______________________________ 1.22 0.38 -> 3.17 [ T047: f2( c[1...40000] ) ]__________________________ 1.22 0.33 -> 3.70 [ T048: f2( @c[1...40000] ) ]_________________________ 1.22 0.34 -> 3.57 [ T049: f2( @c[1...40000] ), c2 := c ]________________ 1.52 0.39 -> 3.86 [ T050: f3( a, a2, s, i, s2, bc, i, n, x ) ]__________ 2.77 0.81 -> 3.42 [ T051: f2( a ) ]_____________________________________ 1.31 0.41 -> 3.22 ============================================================================ [ TOTAL ]_________________________________________ 58.40 20.65 -> 2.83 ============================================================================ [ total application time: ]...................................132.68 [ total real time: ]...........................................79.06 [EMAIL PROTECTED] tests]$ ./speedtst --exclude=mem --scale --thread=8 10/07/08 08:00:52 Linux 2.6.26.3-29.fc9.i686 i686 Harbour 1.1.0dev (Rev. 9564) (MT)+ GNU C 4.3 (32 bit) THREADS: 8 N_LOOPS: 1000000 excluded tests: 029 030 023 025 027 040 041 043 052 053 019 022 031 032 054 1 th. 8 th. factor ============================================================================ [ T001: x := L_C ]____________________________________ 0.83 0.18 -> 4.65 [ T002: x := L_N ]____________________________________ 0.65 0.15 -> 4.24 [ T003: x := L_D ]____________________________________ 0.61 0.17 -> 3.72 [ T004: x := S_C ]____________________________________ 0.84 0.99 -> 0.85 [ T005: x := S_N ]____________________________________ 0.76 0.21 -> 3.58 [ T006: x := S_D ]____________________________________ 0.77 0.22 -> 3.44 [ T007: x := M_C ]____________________________________ 1.04 0.29 -> 3.61 [ T008: x := M_N ]____________________________________ 0.80 0.24 -> 3.34 [ T009: x := M_D ]____________________________________ 0.90 0.26 -> 3.45 [ T010: x := P_C ]____________________________________ 0.98 0.24 -> 4.10 [ T011: x := P_N ]____________________________________ 0.91 0.23 -> 4.00 [ T012: x := P_D ]____________________________________ 0.90 0.25 -> 3.64 [ T013: x := F_C ]____________________________________ 2.11 0.52 -> 4.05 [ T014: x := F_N ]____________________________________ 2.17 0.60 -> 3.63 [ T015: x := F_D ]____________________________________ 1.23 0.33 -> 3.76 [ T016: x := o:GenCode ]______________________________ 2.01 0.54 -> 3.72 [ T017: x := o[8] ]___________________________________ 1.33 0.39 -> 3.42 [ T018: round( i / 1000, 2 ) ]________________________ 2.59 0.66 -> 3.95 [ T020: val( s ) ]____________________________________ 2.65 0.73 -> 3.61 [ T021: val( a [ i % 16 + 1 ] ) ]_____________________ 4.15 1.16 -> 3.58 [ T024: eval( bc := { || i % 16 } ) ]_________________ 3.21 2.46 -> 1.31 [ T026: eval( bc := { |x| x % 16 }, i ) ]_____________ 3.14 1.95 -> 1.61 [ T028: eval( bc := { |x| f1( x ) }, i ) ]____________ 3.69 2.20 -> 1.68 [ T033: x := a[ i % 16 + 1 ] == s ]___________________ 3.03 0.86 -> 3.54 [ T034: x := a[ i % 16 + 1 ] = s ]____________________ 3.25 0.85 -> 3.84 [ T035: x := a[ i % 16 + 1 ] >= s ]___________________ 3.46 0.87 -> 3.99 [ T036: x := a[ i % 16 + 1 ] <= s ]___________________ 3.18 0.98 -> 3.23 [ T037: x := a[ i % 16 + 1 ] < s ]____________________ 3.26 0.89 -> 3.65 [ T038: x := a[ i % 16 + 1 ] > s ]____________________ 3.18 0.99 -> 3.20 [ T039: ascan( a, i % 16 ) ]__________________________ 3.63 1.00 -> 3.63 [ T042: x := a ]______________________________________ 0.80 0.25 -> 3.22 [ T044: f0() ]________________________________________ 1.30 0.37 -> 3.51 [ T045: f1( i ) ]_____________________________________ 1.74 0.42 -> 4.12 [ T046: f2( c[1...8] ) ]______________________________ 1.57 0.43 -> 3.63 [ T047: f2( c[1...40000] ) ]__________________________ 1.65 0.44 -> 3.79 [ T048: f2( @c[1...40000] ) ]_________________________ 1.61 0.41 -> 3.95 [ T049: f2( @c[1...40000] ), c2 := c ]________________ 1.99 0.56 -> 3.59 [ T050: f3( a, a2, s, i, s2, bc, i, n, x ) ]__________ 3.71 1.13 -> 3.28 [ T051: f2( a ) ]_____________________________________ 1.74 0.45 -> 3.86 ============================================================================ [ TOTAL ]_________________________________________ 77.36 25.85 -> 2.99 ============================================================================ [ total application time: ]...................................175.42 [ total real time: ]..........................................103.23 -- "Ninety percent of politicians give the other 10 percent a bad name." -- Henry Kissinger _______________________________________________ Harbour mailing list Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour