Re: Multi-Threaded make

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 11/28/2012 10:48 PM, John Wendel wrote:
On 11/28/2012 08:16 PM, JD wrote:

On 11/28/2012 08:21 PM, Cameron Simpson wrote:
On 28Nov2012 15:37, JD <jd1008@xxxxxxxxx> wrote:
| While building the kernel from source RPM, I run
| the command ps -ef | grep make in another terminal,
| and I do see that 4 make processes are running, with
| each one building objects for a different kernel source
| directory.
|
| However, something else seems to be single threaded
| which is causing the huge delay in finishing kernel build.
|
| I found that when I run top to see the upper-most
| cpu consumers, I see only one cc1 process at the top.
|
| So I ran ps again to see how many cc1 processes there
| are.
|
| Always - just one cc1 process.
|
| I would expect to see anywhere from 1 to 4 cc1 processes
| at a time. But that is not the case.
|
| What is forcing only a single instance of cc1 at a time?

Is make running with the "-j 4" (or whatever value) option?
I had already said that after running rpmbuild,
ps -ef shows 4 make processes running.
So, it must be picking up -j4 from somewhere,
perhaps from one of the rpmbuild macros.

But as I also stated, when files are being compiled, one of the stages
of compilation is cc1. Since there are 4 make processes running at a time,
with each make process running for one of the dirs containing kernel c
source files, then one woould expect to see anywhere from 1 to cc1
processes running during the build.
I only see a single cc1 process running during the entire kernel build duration,
by running ps -ef  | grep cc1
every 5 seconds.

I never see more than a single instance of cc1.


I can't help with this question, but I build a new kernel (from kernel.org) whenever they appear. This never takes more than 5 or 6 minutes on a slow 2-cpu AMD box with only 1 GB memory. I usually
don't specify "-j", so I only have one process running.

I think you're seeing something seriously broken if your builds are taking a huge amount of time.

Regards,

John
Thank you John.
However, my fc16 is kept totally up-to-date with daily updates!!
I just finished building kernel.i686 0:3.7.0-0.rc7.git1.1 from Fedora Rawhide Source RPM.
I used the rpmbuild options:
--without bootwrapper --without debug --without debuginfo --without highbank --without imx --without kirkwood --without omap --without pae --without perf --without perf --without smp --without tegra --without vdso_install

and it still took 11 hours!!! It produced:
kernel-3.7.0-0.rc7.git1.1.fc16.i686.rpm
kernel-headers-3.7.0-0.rc7.git1.1.fc16.i686.rpm
kernel-tools-3.7.0-0.rc7.git1.1.fc16.i686.rpm
kernel-tools-libs-3.7.0-0.rc7.git1.1.fc16.i686.rpm
kernel-tools-libs-devel-3.7.0-0.rc7.git1.1.fc16.i686.rpm
kernel-devel-3.7.0-0.rc7.git1.1.fc16.i686.rpm
kernel-modules-extra-3.7.0-0.rc7.git1.1.fc16.i686.rpm

I do not think that what you build from kernel tarball from mainline
performs the same compilations as building from an rpm source using rpmbuild.

As a side note to Bruno, who wanted me to build and try this kernel:
I will reboot immediately after sending this message with this kernel
I just built.



--
users mailing list
users@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe or change subscription options:
https://admin.fedoraproject.org/mailman/listinfo/users
Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines
Have a question? Ask away: http://ask.fedoraproject.org


[Index of Archives]     [Older Fedora Users]     [Fedora Announce]     [Fedora Package Announce]     [EPEL Announce]     [EPEL Devel]     [Fedora Magazine]     [Fedora Summer Coding]     [Fedora Laptop]     [Fedora Cloud]     [Fedora Advisory Board]     [Fedora Education]     [Fedora Security]     [Fedora Scitech]     [Fedora Robotics]     [Fedora Infrastructure]     [Fedora Websites]     [Anaconda Devel]     [Fedora Devel Java]     [Fedora Desktop]     [Fedora Fonts]     [Fedora Marketing]     [Fedora Management Tools]     [Fedora Mentors]     [Fedora Package Review]     [Fedora R Devel]     [Fedora PHP Devel]     [Kickstart]     [Fedora Music]     [Fedora Packaging]     [Fedora SELinux]     [Fedora Legal]     [Fedora Kernel]     [Fedora OCaml]     [Coolkey]     [Virtualization Tools]     [ET Management Tools]     [Yum Users]     [Yosemite News]     [Gnome Users]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [Fedora Sparc]     [Libvirt Users]     [Fedora ARM]

  Powered by Linux