[lldb-dev] [LLVMdev] RFC: LLVM should require a working C++11 <thread>, <mutex>, and <atomic>

Yaron Keren yaron.keren at gmail.com
Fri Sep 26 03:29:44 PDT 2014

Yes, of course.

I refer to the  significant slowdown of Rust compiler when compiled with
-pthreads vs -win32threads flavor.
If Rust can be compiled without <mutex> and <thread> on win32threads, why
should it slow down on pthreads?
Isn't the only difference betwen the win32threads and pthreads is the
addition of pthreads, <mutex> and <thread>?


2014-09-26 11:39 GMT+03:00 Vadim Chugunov <vadimcn at gmail.com>:

> Hi Yaron,
> Not sure I understand your question.  Wasn't <mutex> one of the more
> important C++11 features that LLVM would like to use?

On Thu, Sep 25, 2014 at 1:24 AM, Yaron Keren <yaron.keren at gmail.com> wrote:

> Vadim,
> Thanks for the feedback on the -win32. A dependency on a small DLL with
> BSD license does not sound too bad, but performance regression is obviously
> a serious problem.
> However, by disabling <mutex> use with -pthreads rust performance should
> be same as -win32 threads?
> Saying it another way, does the -win32 version have any feature that
> -pthreads vesion do not have?
> Yaron
> 2014-09-25 9:52 GMT+03:00 Vadim Chugunov <vadimcn at gmail.com>:
>> Hi,
>> I think I can at least answer why the Rust project prefers to use
>> mingw-w64-win32threads:
>> 1. It does not inject dependency on libwinpthread.dll, which is nice.
>> 2. Those who tried building LLVM with mingw-w64-pthreads, had reported
>> significant slowdown of the resulting Rust compiler (as compared to one
>> linked to LLVM compiled with the win32threads flavor).   Profiling seemed
>> to point towards libpthreads' implementation of mutex.  I had checked the
>> source, and indeed, it looked not very efficient (
>> http://sourceforge.net/p/mingw-w64/bugs/344).  It would be nice to get a
>> second opinion, though, maybe I missed something.
>> Vadim
>> On Wed, Sep 24, 2014 at 10:55 AM, Chandler Carruth <chandlerc at google.com>
>> wrote:
>>> On Wed, Sep 24, 2014 at 10:37 AM, Óscar Fuentes <ofv at wanadoo.es> wrote:
>>>> The best thing for understanding their reasons is to ask them to speak
>>>> up.
>>> I asked them directly, and this thread is a chance for them to speak up
>>> again. I *think* I've addressed the concerns of those I've spoken to
>>> directly, but there may be other folks or other concerns or I may have
>>> messed it up. =]
>>>> My experience on the MinGW/MinGW-w64 communities is that those who
>>>> choose MinGW is because of ignorance about MinGW-w64 and because there
>>>> are lots of documents on the 'net that references MinGW. MinGW is, to
>>>> all practical effects, a zombie project and there is no reason to prefer
>>>> it over MinGW-w64 nowadays.
>>> :: shrug ::
>>> I'm not such a user, and so I don't want to speculate as to what
>>> motivates them.
>>> _______________________________________________
>>> LLVM Developers mailing list
>>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>> _______________________________________________
>> LLVM Developers mailing list
>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20140926/7dab44f1/attachment.html>

More information about the lldb-dev mailing list