From: SF/projects/mingw n. l. <min...@li...> - 2011-04-23 16:41:00
|
Bugs item #3072100, was opened at 2010-09-20 14:13 Message generated for change (Comment added) made by bfriesen You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=102435&aid=3072100&group_id=2435 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: MSYS Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Bob Friesenhahn (bfriesen) Assigned to: Nobody/Anonymous (nobody) Summary: MSYS make is 60X slower than before Initial Comment: MSYS make 3.82 is now 60X slower than earlier make programs. When building GraphicsMagick, it takes 2.5 minutes before make does any work or decides there is nothing to be done. After make has decided what to do, the build proceeds normally. It normally takes a couple of seconds before make decides what needs to be done. With a Cygwin installation on the same machine using the same source files and same build parameters, make decides there is nothing to be done in about two seconds. The build is done with the source files accessed via CIFS to a fast server and object files written locally. Using 'make -d' shows that there are about 340K rules which are tested, without any noticeable pauses or slowness due to server access. Charles Wilson tells me that make now tests various permutations of upper and lower case in order to handle filesystems which don't preserve case. This approach would certainly dramatically multiply the number of filesystem acceses and may explain the dramatic slowdown. I also notice that make 3.82 tests about twice as many implicit rules than make 3.81 does. ---------------------------------------------------------------------- >Comment By: Bob Friesenhahn (bfriesen) Date: 2011-04-23 11:41 Message: I should mention that GraphicsMagick uses a non-recursive Automake build configuration so that source file name specifications including a directory component when building. The source files reside on a fast Samba server but the build directory is hosted by the Windows system. ---------------------------------------------------------------------- Comment By: Bob Friesenhahn (bfriesen) Date: 2011-04-23 11:38 Message: I finally got back to this since today I am using MinGW and it is driving me crazy. The 'csmake' program runs vastly faster than the standard MinGW 'make' to decide to do nothing for a GraphicsMagick build: bfriesen@optiplex755 ~/mingw/GM-16-static $ time make make all-am make[1]: Entering directory `/home/bfriesen/mingw/GM-16-static' make[1]: Leaving directory `/home/bfriesen/mingw/GM-16-static' real 2m14.689s user 0m5.295s sys 0m40.890s bfriesen@optiplex755 ~/mingw/GM-16-static $ time csmake csmake all-am csmake[1]: Entering directory `/home/bfriesen/mingw/GM-16-static' csmake[1]: Leaving directory `/home/bfriesen/mingw/GM-16-static' real 0m2.562s user 0m0.858s sys 0m0.921s ---------------------------------------------------------------------- Comment By: Cesar Strauss (cstrauss) Date: 2010-09-22 18:04 Message: Please try the following version of make (csmake) which does not have the case preserving patch: http://prdownloads.sourceforge.net/mingw/csmake-3.81-MSYS-1.0.11-2.tar.bz2?download Does csmake run at the normal speed? Regards, Cesar ---------------------------------------------------------------------- Comment By: Bob Friesenhahn (bfriesen) Date: 2010-09-21 10:01 Message: My error. It is indeed 3.81: $ make --version GNU Make 3.81 Copyright (C) 2006 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. This program built for i686-pc-msys ---------------------------------------------------------------------- Comment By: Cesar Strauss (cstrauss) Date: 2010-09-20 19:30 Message: Dear Bob, Could you send the output of make --version, please? I'm a bit confused, since the latest MSYS version available is still 3.81. See https://sourceforge.net/projects/mingw/files_beta/MSYS/make/ Regards, Cesar ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=102435&aid=3072100&group_id=2435 |