Przemek, Maurilio:
[Maurilio]
>> I did the change to the makefile, I get an immediate SIGSEGV simply
>>starting
>> hbrun.
>> (E:\repository\harbour-svn\tests)\harbour\bin\hbrun mt\mttest01.prg
>> Killed by SIGSEGV
[Przemek]
>Then there is probably sth wrong with your build.
>I would like to wait for David's confirmation with
>current SVN code. It's possible that the problem
>is caused by some stupid typo in today modifications
>for speed improvement. But if not and it works for David
>then it has to be sth local to OS2-GCC builds and I'm
>afraid that it will be out of my knowledge to resolve
>the problem. You know much more about OS2.
>For sure it works for me in Linux and W32 cross builds.
>BTW today I committed modification with TLS preloading.
>If you synced SVN then you should make clean build
Please fix this. I fixed it locally:
config/os2/gcc.cf:24: *** missing separator. Stop.
Current Harbour compile/run fine
I use newest
set HB_OS2_NEW_TCP=yes
but not agree with name :-)
When it is "New TCP" ? three years ago, now, two years ahead, ... ?
I renamed original hbrun.exe as hbrun_st.exe and created new
hbrun_mt.exe with hbvmmt.a
23/09/08 4:55p 2,711,279 124 a--- hbrun_st.exe
23/09/08 5:16p 2,729,903 124 a--- hbrun_mt.exe
Using same execution as Maurilio with MT:
"(E:\repository\harbour-svn\tests)\harbour\bin\hbrun mt\mttest01.prg"
--------------------
[E:\harbour809mt\harbour\tests]e:\harbour809mt\harbour\bin\hbrun_mt.exe
mt\mttest01.prg
Harbour 1.1.0dev (Rev. 9483)
join: .T.
result: Hello World!!! Hello World!!! Hello World!!!
static var type: B
12345.678
12346.678
--------------------
and checking with ST it must fail as well:
--------------------
[E:\harbour809mt\harbour\tests]e:\harbour809mt\harbour\bin\hbrun_st.exe
mt\mttes
t01.prg
Harbour 1.1.0dev (Rev. 9483)
Error BASE/3012 Argument error: HB_THREADJOIN
Called from HB_THREADJOIN(0)
Called from MAIN(25)
Called from HB_HRBRUN(0)
Called from _APPMAIN(109)
--------------------
and mttest01 compiled with MT
--------------------
[E:\harbour809mt\harbour\tests]mt\mttest01.exe
Harbour 1.1.0dev (Rev. 9483)
join: .T.
result: Hello World!!! Hello World!!! Hello World!!!
static var type: B
12345.678
12346.678
--------------------
Everything worked fine here with current Harbour (9483, fresh build) and
eComStation 1.2MR with set HB_OS2_NEW_TCP=yes ( without -DTCPV40HDRS )
I include tests with:
speedtst.prg compiled with MT
-----------------------------
total application time: 51.98
total real time: 51.98
speedtst.prg executed with hbrun_mt.exe
---------------------------------------
[E:\harbour809mt\harbour\tests]e:\harbour809mt\harbour\bin\hbrun_mt.exe
speedtst.prg
total application time: 53.01
total real time: 53.01
Recent was:
ST
total application time: 47.13
total real time: 47.14
MT
total application time: 55.08
total real time: 55.08
So MT continue falling near ST :-)
I know that "mileage may vary" due to concurrent tasks
>Now we reach level which cannot be improved too much more
>though I'll commit in a while yet another modification which
>will buffer TLS access by preloading hb_stack pointer to C
>stack functions local variable. It should give some additional
>speed improvement on some platforms/C compilers, f.e. in BCC
>builds which seems the have very expensive cost of native
>TLS variables.
Maybe this is the reason
>> I have not started MT tests in Win32 / Linux yet. Both will be in
>> Core2Duo 2.0 so a great speed difference should be expected respect to
>> current Athlon 2200+ tests
>Not in sppedtst.prg test. It's classic single thread program
>which will use only one CPU.
My expects are not exactly for multi-CPU, but for comparing two
generations of processors
In previous tests with highly extensive calculations program, the
core2duo 2.0 terminate in half of time against a PentiumIV 3.3 Mhz HT
Same Windows XP
I made that program around 15 years ago. Is a computer simulation of an
polymer extruder involving numerical methods and finite differences in
3-D grids calculating velocity, pressure, temperature, ... profiles
It that time a run used near 2 hours (486/DX ?), now core2duo made it in
3 minutes
Program are still in 16 bits with Clipper 5.3 (latest compiled in 1997)
Perhaps later I will try with (x)Harbour, it will be a good test :-)
David Macias
_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour