Hi K. Frank,

very interesting results.  I try to give my 5 cents for interpretation
of timings.  Esspecially case "d" I am interested in.  As here we seem
to spend too much time in idle-looping.  Not sure why it happens, but
looks worth-wile for investigation.

2011/9/30 K. Frank <kfrank2...@gmail.com>:
> Hello List!
>
> I have run some timings on a couple of my std::thread test programs
> using the following three std::thread implementations:
>
>   native windows implementation, mingw-w64 4.5.2, a sezero build
>   pthreads-win32 implementation, mingw-w64 4.5.2, a sezero build
>   winpthreads implementation, mingw-w64 4.7.0, Ruben's std::thread build
>
> I list the timings, in seconds, in the above order (native, pthreads-win32,
> winpthreads):
>
> Test "c2" (parallel accumulate):
>
>   15.40 (0.09)   15.43 (0.05)   18.79 (0.07)

This slow-down might be caused by different implementation and/or
code-generation of libstdc++/compiler.  Nevertheless it might be also
some additional overhead for thread-creation what we are seeing here.

> Test "d" (mutex contention):
>
>   2.12 (0.02)   2.62 (0.08)   40.41 (0.06)

For this test I would be interested to get some testcode.  This looks
to me like an uncessary sleep or thread-pausing.

> Test "e" (condition variables):
>
>   3.18 (0.04)   3.31 (0.10)   0.74 (0.04)

That one shows that winpthread tries to do a real round-balancing for
waiters on conditional variables.  And the approach seems to be worth,
as we see in timing.  I spend here some time to implement proper
concurrency balancing code for waiters.  Nice :)

Regards,
Kai

------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security
threats, fraudulent activity, and more. Splunk takes this data and makes
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2dcopy2
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to