This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PATCH: Improve performance of gthr-win32

Christopher Faylor wrote:
On Mon, Mar 15, 2004 at 10:46:02PM +0800, Wu Yongwei wrote:

This is my attempt to solve the performance overhead of __gthread_mutex
functions.  On Win32, in order to support __gthread_mutex_trylock,
currently MUTEXs instead of CRITICAL_SECTIONs are used to represent the
__gthread_mutex_t, but MUTEXs are far slower.  According to my own
measurement, the overhead is about 60:1.

When my first attempt to address this problem by implementing
TryEnterCriticalSection on Windows 9x failed, Thomas Pfaff showed
another way:

And I have finally done this.  Please have a check.  There are the
patch, two test files, and my test log.  The only drawback is that it
requires Windows 98 or later, and Windows NT 4 or later.  I do not think
it a problem, but I am willing to write another patch to solve the
problem using inline assembly if people here insist that Windows 95 is

When you presented these patches to the mingw-dvlpr mailing list there
was some question about copyright.  We need your assurance that you both
have an assignment on file with the FSF for changes to gcc and that you
have not adapted these patches from some other project like
pthreads-win32 or cygwin.


Please enlighten me how. I am willing to do everything needed to make the patch accepted, but I am really a newbie in respect of contributing to GCC. Must I snail-mail a written disclaimer, or what? And where is the most appropriate template (I only found some in mail archives but not on the page indicated by the Contributing page)?

I have not copied or consulted code in other projects, whether open-source or commercial. The only external source is Thomas's ideas.

Best regards,

Wu Yongwei

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]