Re: need help on "make -j" parameter, it will let the system hung easily.
> Date: Fri, 14 Dec 2012 20:37:54 +0400 > From: "Dmitry V. Levin" > > > > make: More parallel jobs (-jN) than this platform can handle > > > requested. > > > make: Resetting to single job (-j1) mode. > > > > I see no message like this in the current Make sources. Maybe I'm > > missing something. > > That message comes from a vendor patched make, see > http://pkgs.fedoraproject.org/cgit/make.git/plain/make-3.82-j8k.patch > http://pkgs.fedoraproject.org/cgit/make.git/tree/make.spec#n291 > https://bugzilla.redhat.com/show_bug.cgi?id=142691 > https://bugzilla.redhat.com/show_bug.cgi?id=17374 Thanks. I'd say this is a subtle bug in Make that should be solved in some better way. There's no relation whatsoever between the maximum length of a pipe and the maximum number of parallel jobs that can be run on a system, except an implementation detail of the GNU Make jobserver. OTOH, I can easily imagine a system with more than 4K cores, where such a limitation will really hurt. ___ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make
Re: need help on "make -j" parameter, it will let the system hung easily.
On Fri, 2012-12-14 at 17:07 +0200, Eli Zaretskii wrote: > Does it even make sense to use -j with no arguments? Should we > perhaps remove that possibility, or have some internal sane limit, > like twice the number of cores, say? In general I'd say no, the current behavior is not ideal. However I don't want to remove the behavior. I'd rather have the default, if given no argument, choose a "sane" limit. However, how does one detect the number of cores on a system in a portable way? It's easy enough on Linux but... ___ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make
Re: need help on "make -j" parameter, it will let the system hung easily.
On Sat, Dec 15, 2012 at 09:35:18AM -0500, Paul Smith wrote: > On Fri, 2012-12-14 at 17:07 +0200, Eli Zaretskii wrote: > > Does it even make sense to use -j with no arguments? Should we > > perhaps remove that possibility, or have some internal sane limit, > > like twice the number of cores, say? > > In general I'd say no, the current behavior is not ideal. However I > don't want to remove the behavior. I'd rather have the default, if > given no argument, choose a "sane" limit. However, how does one detect > the number of cores on a system in a portable way? It's easy enough on > Linux but... gnulib has a nproc module that can "detect the number of processors": http://git.savannah.gnu.org/cgit/gnulib.git/tree/modules/nproc Judging from the number of #if's in its implementation it must be quite portable. :) -- ldv pgp0F7IV2U4pb.pgp Description: PGP signature ___ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make
Re: need help on "make -j" parameter, it will let the system hung easily.
> From: Paul Smith > Cc: warner.w...@hp.com, Bug-make@gnu.org > Date: Sat, 15 Dec 2012 09:35:18 -0500 > > On Fri, 2012-12-14 at 17:07 +0200, Eli Zaretskii wrote: > > Does it even make sense to use -j with no arguments? Should we > > perhaps remove that possibility, or have some internal sane limit, > > like twice the number of cores, say? > > In general I'd say no, the current behavior is not ideal. However I > don't want to remove the behavior. I'd rather have the default, if > given no argument, choose a "sane" limit. However, how does one detect > the number of cores on a system in a portable way? It's easy enough on > Linux but... It's also easy enough on MS-Windows. ___ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make
Re: need help on "make -j" parameter, it will let the system hung easily.
> Date: Sat, 15 Dec 2012 19:08:06 +0400 > From: "Dmitry V. Levin" > > gnulib has a nproc module that can "detect the number of processors": > http://git.savannah.gnu.org/cgit/gnulib.git/tree/modules/nproc > Judging from the number of #if's in its implementation it must be quite > portable. :) But doesn't DTRT on Windows systems with more than 64 processors. ___ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make
Possible bug with $(eval) and :=
I've been using this thunk implementation as described http://www.cakoose.com/wiki/gnu_make_thunks, but recently came upon an anomaly on a different operating system. Here's an example Makefile: A = abcdefghijklmnop B = $(eval B := $A)$B test: @echo [$B] @echo [$B] On cygwin it seems to work fine: [abcdefghijklmnopqr] [abcdefghijklmnopqr] But on Mac 10.6 as well as Ubuntu 12.04, it returns: [p] [abcdefghijklmnop] All of these environments are running make 3.82. The length of the definitions of A and B matter, too. Basically the first expansion of $B truncates as many characters as the $(eval ...) definition is long. Very strange. Am I missing something? -- Victor Shih blog.vicshih.com ___ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make
Re: Possible bug with $(eval) and :=
Victor, A similar question was asked some time ago: http://lists.gnu.org/archive/html/bug-make/2012-05/msg00014.html Short answer: Yes, this is a bug, see here: https://savannah.gnu.org/patch/?7534 Accordingly to the difference between Cygwin and other versions: I believe the former has a newer version of Make (3.82.90 maybe), which doesn't have this bug anymore. 2012/12/16 Victor Shih > > I've been using this thunk implementation as described > http://www.cakoose.com/wiki/gnu_make_thunks, but recently came upon an > anomaly on a different operating system. Here's an example Makefile: > > > A = abcdefghijklmnop > B = $(eval B := $A)$B > > test: > @echo [$B] > @echo [$B] > > > On cygwin it seems to work fine: > [abcdefghijklmnopqr] > [abcdefghijklmnopqr] > > > But on Mac 10.6 as well as Ubuntu 12.04, it returns: > [p] > [abcdefghijklmnop] > > > All of these environments are running make 3.82. > > The length of the definitions of A and B matter, too. Basically the first > expansion of $B truncates as many characters as the $(eval ...) definition > is long. Very strange. > > Am I missing something? > > > -- > Victor Shih > blog.vicshih.com > > ___ > Bug-make mailing list > Bug-make@gnu.org > https://lists.gnu.org/mailman/listinfo/bug-make > > -- Best regards, Eldar Sh. Abusalimov ___ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make