Suvayu Ali writes:
On Sun, May 31, 2015 at 03:29:29PM -0400, Sam Varshavchik wrote:
> Suvayu Ali writes:
>
> >On Sun, May 31, 2015 at 01:24:07PM -0400, Sam Varshavchik wrote:
> >>
> >> >> ps shows the maximum number of "/usr/bin/distcc /usr/bin/g++
[options]"
> >> >> processes running locally, that I but nothing gets distributed to
other
> >> >> hosts.
> >>
> >> I've got distcc configured for 10 concurrent builds. 4 local, 6
distributed
> >> to another host. I see ten distcc processes on the local machine during
the
> >> rpmbuild, /var/log/messages on the other host shows nothing – it logs
> >distcc
> >> server activity otherwise – and the local host appears to be running
only
> >> four concurrent compiles.
> >
> >Are you running under mock? Maybe chroot is preventing remote builds?
>
> No, this is an ordinary rpmbuild.
How does rpmbulid decide how many threads to run? I think it looks at
the local machine and decides. I also recall some variable called
RPMBUILD_NCPU or something like that. That would explain why it only
uses as many threads as the local machine can handle.
Hope this helps,
Sadly, no it doesn't. As I wrote above:
> >> >> ps shows the maximum number of
"/usr/bin/distcc /usr/bin/g++
[options]"
> >> >> processes running locally,
rpmbuild uses the _smp_mflags macro to pass the -j parameter to make, and I
have it correctly configured to kick off ten parallel processes, to match
the maximum number of ten processes distcc is configured (4 local, 6
remote). Yet, despite the fact that a manual build distributes the compiles
correctly, with rpmbuild distcc throttles the number of concurrent parallel
jobs that it kicks off to four, and runs them locally.