On Wednesday 28 October 2009 21:29:10 Felix Fietkau wrote: > Michael Buesch wrote: > > On Wednesday 28 October 2009 03:04:41 Felix Fietkau wrote: > >> > That would be a huge advantage and speedup the openwrt buildprocess by > >> > about 35-40 percent points on my quad machine. The advantage gets higher > >> > the more cores we have. > >> > And I think quads are not that uncommon anymore today. > >> Why do you think the difference is that big between building multiple > >> packages at the same time and building individual packages in parallel? > > > > Because the cpu utilization is horribly low during an openwrt build. > > It ranges from 25% for the toolchain to 99% for the kernel. > > For compiling "normal" packages there's usually an overall utilization of > > 60-75%. I'm pretty sure > > if we'd allow two processors (or more) on one package at the same time, it > > would go up to nearly 99% > > on my machine. Especially for bigger packages like busybox, ssh, etc... > > I'd also like to have an optional (default off) parallel build of the > > toolchain. I don't mind > > poking it two or three times. That'd still be faster than compiling the > > whole toolchain at 25%. > I did a test with all packages of trunk selected (/packages not > included), and 3 packages broke with very weird build failures. > This was with a small change to include/package.mk that sets > MAKE := $(MAKE) -j 8 > and some other patches to replace $(MAKE) all install calls with > multiple calls. > The three packages that broke were apex, iproute2, openssl. Also when > I've done similar tests in the past, some other packages also broke, > though only under rare, hard to trigger circumstances. > If somebody makes a patch that enables package build parallelization, I > definitely don't want to have this enabled by default whenever somebody > does make -j in the OpenWrt build system. > I think most people that use make -j would prefer to have something that > may be a little slower, but doesn't cause unexpected build failures > depending on the parallelization level.
Yeah. I'm fine with an option that defaults to off and has a big warning message. However, I don't know the buildsystem good enough to add such an option and proper parallelization... -- Greetings, Michael. _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel