delorie.com/archives/browse.cgi | search |
Mailing-List: | contact cygwin-help AT cygwin DOT com; run by ezmlm |
List-Subscribe: | <mailto:cygwin-subscribe AT cygwin DOT com> |
List-Archive: | <http://sources.redhat.com/ml/cygwin/> |
List-Post: | <mailto:cygwin AT cygwin DOT com> |
List-Help: | <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs> |
Sender: | cygwin-owner AT cygwin DOT com |
Mail-Followup-To: | cygwin AT cygwin DOT com |
Delivered-To: | mailing list cygwin AT cygwin DOT com |
Message-ID: | <20020502012325.56757.qmail@web20706.mail.yahoo.com> |
Date: | Wed, 1 May 2002 18:23:25 -0700 (PDT) |
From: | Earnie Boyd <earnie_boyd AT yahoo DOT com> |
Subject: | Re: FW: trying to understand poor performance of make + cygwin on W2K |
To: | Ken Faiczak <kfaiczak AT SANDVINE DOT com>, Randall R Schulz <rrschulz AT cris DOT com> |
Cc: | cygwin AT cygwin DOT com |
MIME-Version: | 1.0 |
Note-from-DJ: | This may be spam |
This is a good topic. It's been a while since it was discussed on this list. For a real understanding of what's going on you should get the Cygwin code and execute your test under strace. It'll open your eyes to what happens to make the POSIX pathing work. There are a number of things that you can do to improve the performance, but, since this is an emulation layer on top of the OS it'll never be Linux performance. One of the things you can do is to minimize the PATH list. Make it as small as possible. Note that you only need /bin as /usr/bin points to the same path. Make sure that /bin is first in the PATH list. Another item of interest is a trick that was added by Chris Faylor a few years ago. It's not highly known and is rarely used but it is listed in the documentation. This trick involves marking the /bin and /usr/bin mount poinst as Cygwin dependant executables only. This means that if you have an executable that doesn't depend on Cygwin that you have to put it elsewhere. If you do have a non-Cygwin executable in the /bin directory it will not execute and will give you errors. This will however bypass the conversion code necessary for passing the environment to a win32 process. If you wish to take advantage of this take a look at the mount switch -X; --cygwin-executable. The next envolves the win32 environment itself. Processes that are executing that have registered threads to be notified of file system changes could slow down the execution because they require system time. You may want to try your tests with such processes executing and not executing to see the variance. One such program is the antivirus software. There's probably some other things that you can do with the system, I don't know what those are but a good resource for the workings of Win32 is www.sysinternals.com. HTH, Earnie. ===== Earnie Boyd mailto:earnie_boyd AT yahoo DOT com --- <http://earniesystems.safeshopper.com> --- --- Cygwin: POSIX on Windows <http://gw32.freeyellow.com/> --- --- Minimalist GNU for Windows <http://www.mingw.org/> --- __________________________________________________ Do You Yahoo!? Yahoo! Health - your guide to health and wellness http://health.yahoo.com -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |