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

Reply via email to