[Harbour] 2008-10-02 14:33 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)

Szakáts Viktor harbour.01 at syenar.hu
Thu Oct 2 16:33:54 EDT 2008


>
Hi Przemek,

> 2008-10-02 14:33 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
>  * harbour/include/hbstack.h
>    % enable assembler inline function to access HVM thread stack  
> pointer
>      without native compiler TLS support even if HB_STACK_PRELOAD is  
> not
>      defined in MinGW builds. It gives some additional small speed
>      improvement in MT mode

I've remeasured MinGW and the MT overhead went
down to the level of MSVC/BCCs, even a bit lower
to 36% (from 58%, so it's actually ery significant).

Thanks a lot for it.

This is still not close to the Linux/OS/2 overhead,
but since the results are now pretty consistent
across the different compilers, I'd assume this is
the maximum that can be squeezed out from Windows
XP, and the bottleneck may be the OS itself (or
maybe my old-timer P4 2.66HT/800 CPU).

Anyway, by using MSVC as the compiler, plus dlmalloc,
the practical overhead is pretty much gone.

---
Total application time (r9509) (measured last week):

Compiler             ST     MT overhead
---------------- ------ ------ --------
GCC432 HB_NO_TLS  40.67  64.14      58%

---
Total application time (r9535) (measured now):

Compiler             ST     MT overhead
---------------- ------ ------ --------
GCC432            42.80  58.11      36%

Brgds,
Viktor



More information about the Harbour mailing list