Thank you for the tip
Adopted to HMG
http://www.hmgforum.com/viewtopic.php?f=11&t=5401
Moderator: Rathinagiri
Mr. Filatov:
Hello,
Hope that useful2017-04-22 16:59:40 Windows 7 6.1.7601 Service Pack 1
Harbour 3.2.0dev (r1704200801) Borland C++ 5.5.1 (32-bit) x86
THREADS: 0
N_LOOPS: 1000000
[ T000: empty loop overhead ]...................................0.05
====================================================================
[ T001: x := L_C ]..............................................0.02
[ T002: x := L_N ]..............................................0.00
[ T003: x := L_D ]..............................................0.03
[ T004: x := S_C ]..............................................0.03
[ T005: x := S_N ]..............................................0.03
[ T006: x := S_D ]..............................................0.03
[ T007: x := M->M_C ]...........................................0.05
[ T008: x := M->M_N ]...........................................0.03
[ T009: x := M->M_D ]...........................................0.03
[ T010: x := M->P_C ]...........................................0.03
[ T011: x := M->P_N ]...........................................0.03
[ T012: x := M->P_D ]...........................................0.03
[ T013: x := F_C ]..............................................0.02
[ T014: x := F_N ]..............................................0.02
[ T015: x := F_D ]..............................................0.02
[ T016: x := o:Args ]...........................................0.14
[ T017: x := o[ 2 ] ]...........................................0.09
[ T018: Round( i / 1000, 2 ) ]..................................0.22
[ T019: Str( i / 1000 ) ].......................................0.59
[ T020: Val( s ) ]..............................................0.23
[ T021: Val( a [ i % 16 + 1 ] ) ]...............................0.39
[ T022: DToS( d - i % 10000 ) ].................................0.58
[ T023: Eval( {|| i % 16 } ) ]..................................0.34
[ T024: Eval( bc := {|| i % 16 } ) ]............................0.22
[ T025: Eval( {| x | x % 16 }, i ) ]............................0.28
[ T026: Eval( bc := {| x | x % 16 }, i ) ]......................0.22
[ T027: Eval( {| x | f1( x ) }, i ) ]...........................0.34
[ T028: Eval( bc := {| x | f1( x ) }, i ) ].....................0.27
[ T029: Eval( bc := &( "{| x | f1( x ) }" ), i ) ]..............0.28
[ T030: x := &( "f1(" + Str( i ) + ")" ) ]......................2.54
[ T031: bc := &( "{| x | f1( x ) }" ), Eval( bc, i ) ]..........2.81
[ T032: x := ValType( x ) + ValType( i ) ]......................0.33
[ T033: x := StrZero( i % 100, 2 ) $ a[ i % 16 + 1 ] ]..........0.69
[ T034: x := a[ i % 16 + 1 ] == s ].............................0.27
[ T035: x := a[ i % 16 + 1 ] = s ]..............................0.31
[ T036: x := a[ i % 16 + 1 ] >= s ].............................0.30
[ T037: x := a[ i % 16 + 1 ] <= s ].............................0.31
[ T038: x := a[ i % 16 + 1 ] < s ]..............................0.30
[ T039: x := a[ i % 16 + 1 ] > s ]..............................0.30
[ T040: AScan( a, i % 16 ) ]....................................0.30
[ T041: AScan( a, {| x | x == i % 16 } ) ]......................2.48
[ T042: iif( i % 1000 == 0, a := {}, ), AAdd(a,{i,1,.T.,s, ]....0.76
[ T043: x := a ]................................................0.03
[ T044: x := {} ]...............................................0.09
[ T045: f0() ]..................................................0.03
[ T046: f1( i ) ]...............................................0.09
[ T047: f2( c[1...8] ) ]........................................0.09
[ T048: f2( c[1...40000] ) ]....................................0.08
[ T049: f2( @c[1...40000] ) ]...................................0.06
[ T050: f2( @c[1...40000] ), c2 := c ]..........................0.11
[ T051: f3( a, a2, s, i, s2, bc, i, n, x ) ]....................0.36
[ T052: f2( a ) ]...............................................0.09
[ T053: x := f4() ].............................................0.61
[ T054: x := f5() ].............................................0.19
[ T055: x := Space( 16 ) ]......................................0.14
[ T056: f_prv( c ) ]............................................0.31
====================================================================
[ total application time: ]....................................21.18
[ total real time: ]...........................................21.35
2017-04-22 16:57:35 Windows 7 6.1 SP1
Harbour 3.4.0dev (5d434cf) (2017-04-21 13:34) MinGW GNU C 6.3 (32-bit) x86
THREADS: 0
N_LOOPS: 1000000
[ T000: empty loop overhead ]...................................0.03
====================================================================
[ T001: x := L_C ]..............................................0.02
[ T002: x := L_N ]..............................................0.00
[ T003: x := L_D ]..............................................0.00
[ T004: x := S_C ]..............................................0.02
[ T005: x := S_N ]..............................................0.03
[ T006: x := S_D ]..............................................0.00
[ T007: x := M->M_C ]...........................................0.03
[ T008: x := M->M_N ]...........................................0.03
[ T009: x := M->M_D ]...........................................0.02
[ T010: x := M->P_C ]...........................................0.03
[ T011: x := M->P_N ]...........................................0.02
[ T012: x := M->P_D ]...........................................0.02
[ T013: x := F_C ]..............................................0.00
[ T014: x := F_N ]..............................................0.02
[ T015: x := F_D ]..............................................0.02
[ T016: x := o:Args ]...........................................0.09
[ T017: x := o[ 2 ] ]...........................................0.08
[ T018: Round( i / 1000, 2 ) ]..................................0.12
[ T019: Str( i / 1000 ) ].......................................0.37
[ T020: Val( s ) ]..............................................0.19
[ T021: Val( a [ i % 16 + 1 ] ) ]...............................0.28
[ T022: DToS( d - i % 10000 ) ].................................0.30
[ T023: Eval( {|| i % 16 } ) ]..................................0.23
[ T024: Eval( bc := {|| i % 16 } ) ]............................0.16
[ T025: Eval( {| x | x % 16 }, i ) ]............................0.20
[ T026: Eval( bc := {| x | x % 16 }, i ) ]......................0.16
[ T027: Eval( {| x | f1( x ) }, i ) ]...........................0.22
[ T028: Eval( bc := {| x | f1( x ) }, i ) ].....................0.19
[ T029: Eval( bc := &( "{| x | f1( x ) }" ), i ) ]..............0.17
[ T030: x := &( "f1(" + Str( i ) + ")" ) ]......................1.61
[ T031: bc := &( "{| x | f1( x ) }" ), Eval( bc, i ) ]..........1.89
[ T032: x := ValType( x ) + ValType( i ) ]......................0.22
[ T033: x := StrZero( i % 100, 2 ) $ a[ i % 16 + 1 ] ]..........0.47
[ T034: x := a[ i % 16 + 1 ] == s ].............................0.16
[ T035: x := a[ i % 16 + 1 ] = s ]..............................0.19
[ T036: x := a[ i % 16 + 1 ] >= s ].............................0.19
[ T037: x := a[ i % 16 + 1 ] <= s ].............................0.17
[ T038: x := a[ i % 16 + 1 ] < s ]..............................0.17
[ T039: x := a[ i % 16 + 1 ] > s ]..............................0.19
[ T040: AScan( a, i % 16 ) ]....................................0.17
[ T041: AScan( a, {| x | x == i % 16 } ) ]......................1.72
[ T042: iif( i % 1000 == 0, a := {}, ), AAdd(a,{i,1,.T.,s, ]....0.51
[ T043: x := a ]................................................0.03
[ T044: x := {} ]...............................................0.05
[ T045: f0() ]..................................................0.03
[ T046: f1( i ) ]...............................................0.06
[ T047: f2( c[1...8] ) ]........................................0.05
[ T048: f2( c[1...40000] ) ]....................................0.06
[ T049: f2( @c[1...40000] ) ]...................................0.05
[ T050: f2( @c[1...40000] ), c2 := c ]..........................0.06
[ T051: f3( a, a2, s, i, s2, bc, i, n, x ) ]....................0.22
[ T052: f2( a ) ]...............................................0.06
[ T053: x := f4() ].............................................0.27
[ T054: x := f5() ].............................................0.12
[ T055: x := Space( 16 ) ]......................................0.11
[ T056: f_prv( c ) ]............................................0.19
====================================================================
[ total application time: ]....................................13.76
[ total real time: ]...........................................13.96
2017-04-22 16:56:10 Windows 7 6.1.7601 Service Pack 1
Harbour 3.2.0dev (r1704151935) Microsoft Visual C++ 19.0.24215 (32-bit) x86
THREADS: 0
N_LOOPS: 1000000
[ T000: empty loop overhead ]...................................0.03
====================================================================
[ T001: x := L_C ]..............................................0.02
[ T002: x := L_N ]..............................................0.02
[ T003: x := L_D ]..............................................0.00
[ T004: x := S_C ]..............................................0.03
[ T005: x := S_N ]..............................................0.03
[ T006: x := S_D ]..............................................0.02
[ T007: x := M->M_C ]...........................................0.05
[ T008: x := M->M_N ]...........................................0.02
[ T009: x := M->M_D ]...........................................0.03
[ T010: x := M->P_C ]...........................................0.05
[ T011: x := M->P_N ]...........................................0.02
[ T012: x := M->P_D ]...........................................0.03
[ T013: x := F_C ]..............................................0.02
[ T014: x := F_N ]..............................................0.03
[ T015: x := F_D ]..............................................0.00
[ T016: x := o:Args ]...........................................0.11
[ T017: x := o[ 2 ] ]...........................................0.06
[ T018: Round( i / 1000, 2 ) ]..................................0.14
[ T019: Str( i / 1000 ) ].......................................0.36
[ T020: Val( s ) ]..............................................0.19
[ T021: Val( a [ i % 16 + 1 ] ) ]...............................0.31
[ T022: DToS( d - i % 10000 ) ].................................0.45
[ T023: Eval( {|| i % 16 } ) ]..................................0.27
[ T024: Eval( bc := {|| i % 16 } ) ]............................0.16
[ T025: Eval( {| x | x % 16 }, i ) ]............................0.23
[ T026: Eval( bc := {| x | x % 16 }, i ) ]......................0.16
[ T027: Eval( {| x | f1( x ) }, i ) ]...........................0.23
[ T028: Eval( bc := {| x | f1( x ) }, i ) ].....................0.17
[ T029: Eval( bc := &( "{| x | f1( x ) }" ), i ) ]..............0.20
[ T030: x := &( "f1(" + Str( i ) + ")" ) ]......................1.59
[ T031: bc := &( "{| x | f1( x ) }" ), Eval( bc, i ) ]..........1.92
[ T032: x := ValType( x ) + ValType( i ) ]......................0.23
[ T033: x := StrZero( i % 100, 2 ) $ a[ i % 16 + 1 ] ]..........0.45
[ T034: x := a[ i % 16 + 1 ] == s ].............................0.20
[ T035: x := a[ i % 16 + 1 ] = s ]..............................0.22
[ T036: x := a[ i % 16 + 1 ] >= s ].............................0.22
[ T037: x := a[ i % 16 + 1 ] <= s ].............................0.22
[ T038: x := a[ i % 16 + 1 ] < s ]..............................0.20
[ T039: x := a[ i % 16 + 1 ] > s ]..............................0.27
[ T040: AScan( a, i % 16 ) ]....................................0.23
[ T041: AScan( a, {| x | x == i % 16 } ) ]......................1.84
[ T042: iif( i % 1000 == 0, a := {}, ), AAdd(a,{i,1,.T.,s, ]....0.55
[ T043: x := a ]................................................0.03
[ T044: x := {} ]...............................................0.08
[ T045: f0() ]..................................................0.03
[ T046: f1( i ) ]...............................................0.08
[ T047: f2( c[1...8] ) ]........................................0.08
[ T048: f2( c[1...40000] ) ]....................................0.08
[ T049: f2( @c[1...40000] ) ]...................................0.06
[ T050: f2( @c[1...40000] ), c2 := c ]..........................0.09
[ T051: f3( a, a2, s, i, s2, bc, i, n, x ) ]....................0.23
[ T052: f2( a ) ]...............................................0.08
[ T053: x := f4() ].............................................0.28
[ T054: x := f5() ].............................................0.12
[ T055: x := Space( 16 ) ]......................................0.11
[ T056: f_prv( c ) ]............................................0.22
====================================================================
[ total application time: ]....................................14.84
[ total real time: ]...........................................15.17
2017-04-22 17:02:48 Windows 7 6.1.7601 Service Pack 1
Harbour 3.2.0dev (r1703151339) LLVM/Clang C 3.3.1 (35832.6139226.5cda94d) (32-bit) x86
THREADS: 0
N_LOOPS: 1000000
[ T000: empty loop overhead ]...................................0.02
====================================================================
[ T001: x := L_C ]..............................................0.06
[ T002: x := L_N ]..............................................0.05
[ T003: x := L_D ]..............................................0.03
[ T004: x := S_C ]..............................................0.06
[ T005: x := S_N ]..............................................0.05
[ T006: x := S_D ]..............................................0.05
[ T007: x := M->M_C ]...........................................0.06
[ T008: x := M->M_N ]...........................................0.05
[ T009: x := M->M_D ]...........................................0.05
[ T010: x := M->P_C ]...........................................0.06
[ T011: x := M->P_N ]...........................................0.03
[ T012: x := M->P_D ]...........................................0.06
[ T013: x := F_C ]..............................................0.03
[ T014: x := F_N ]..............................................0.05
[ T015: x := F_D ]..............................................0.03
[ T016: x := o:Args ]...........................................0.16
[ T017: x := o[ 2 ] ]...........................................0.09
[ T018: Round( i / 1000, 2 ) ]..................................0.20
[ T019: Str( i / 1000 ) ].......................................0.67
[ T020: Val( s ) ]..............................................0.20
[ T021: Val( a [ i % 16 + 1 ] ) ]...............................0.37
[ T022: DToS( d - i % 10000 ) ].................................0.41
[ T023: Eval( {|| i % 16 } ) ]..................................0.30
[ T024: Eval( bc := {|| i % 16 } ) ]............................0.20
[ T025: Eval( {| x | x % 16 }, i ) ]............................0.25
[ T026: Eval( bc := {| x | x % 16 }, i ) ]......................0.20
[ T027: Eval( {| x | f1( x ) }, i ) ]...........................0.27
[ T028: Eval( bc := {| x | f1( x ) }, i ) ].....................0.23
[ T029: Eval( bc := &( "{| x | f1( x ) }" ), i ) ]..............0.22
[ T030: x := &( "f1(" + Str( i ) + ")" ) ]......................1.81
[ T031: bc := &( "{| x | f1( x ) }" ), Eval( bc, i ) ]..........2.07
[ T032: x := ValType( x ) + ValType( i ) ]......................0.25
[ T033: x := StrZero( i % 100, 2 ) $ a[ i % 16 + 1 ] ]..........0.73
[ T034: x := a[ i % 16 + 1 ] == s ].............................0.27
[ T035: x := a[ i % 16 + 1 ] = s ]..............................0.30
[ T036: x := a[ i % 16 + 1 ] >= s ].............................0.30
[ T037: x := a[ i % 16 + 1 ] <= s ].............................0.30
[ T038: x := a[ i % 16 + 1 ] < s ]..............................0.28
[ T039: x := a[ i % 16 + 1 ] > s ]..............................0.30
[ T040: AScan( a, i % 16 ) ]....................................0.25
[ T041: AScan( a, {| x | x == i % 16 } ) ]......................1.97
[ T042: iif( i % 1000 == 0, a := {}, ), AAdd(a,{i,1,.T.,s, ]....0.62
[ T043: x := a ]................................................0.05
[ T044: x := {} ]...............................................0.09
[ T045: f0() ]..................................................0.05
[ T046: f1( i ) ]...............................................0.09
[ T047: f2( c[1...8] ) ]........................................0.09
[ T048: f2( c[1...40000] ) ]....................................0.08
[ T049: f2( @c[1...40000] ) ]...................................0.08
[ T050: f2( @c[1...40000] ), c2 := c ]..........................0.11
[ T051: f3( a, a2, s, i, s2, bc, i, n, x ) ]....................0.31
[ T052: f2( a ) ]...............................................0.08
[ T053: x := f4() ].............................................0.41
[ T054: x := f5() ].............................................0.17
[ T055: x := Space( 16 ) ]......................................0.14
[ T056: f_prv( c ) ]............................................0.23
====================================================================
[ total application time: ]....................................16.80
[ total real time: ]...........................................17.02
Hello,
That clarifies everything.
Powerful reason. I had not thought about it, and there are still many machines that work (and well) with WXP.
This is a excellent news.gfilatov wrote: ↑Thu Sep 14, 2017 9:57 am BTW I saw a growing interest to MinGW-based build of MiniGUI Ex at http://sourceforge.net/projects/hbpidew/
Hi,BeGeS wrote: ↑Thu Sep 14, 2017 8:44 pmThis is a excellent news.gfilatov wrote: ↑Thu Sep 14, 2017 9:57 am BTW I saw a growing interest to MinGW-based build of MiniGUI Ex at http://sourceforge.net/projects/hbpidew/
Pete, I take this opportunity to ask you a question:
Hi,