This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Deduce automatically number of cores for -flto option.
On 7/31/19 10:08 AM, Jan Hubicka wrote:
> Hi,
>
>> We do not detect jobserver because of Dejagnu is not using it.
>> And yes, we default to -flto=<numthreads> in LTO tests now. That's
>> what is causing issues right now.
>
> Why the error messages are
> make[4]: *** write jobserver: Bad file descriptor. Stop.
> make[4]: *** Waiting for unfinished jobs....
> make[4]: *** write jobserver: Bad file descriptor. Stop.
> It seems to me that it is internal make from lto-wrapper trying to get
> jobserver access?
Hard to guess. Can you Jakub debug that? I don't see the error message.
>
>> Works for me.
>
> We probably also can give it a meaning controlling the default parameter
> of -flto.
> I.e. setenv GCC_LTO_PARALLELISM <numthreads/auto/jobserv>
> which we will default to in case only -flto is passed to command line.
Interesting idea, I like it, but:
- if we detect that jobserver will not work, GCC_LTO_PARALLELISM=jobserver is useless
- auto equals now to 'unset GCC_LTO_PARALLELISM'
So the only interesting value is numthreads. Then I would recommend to use
GCC_LTO_MAX_AUTO_THREADS?
>
> Make's jobserver is quite nice and easy to use. If it supported named
> pipe and there was a small library which allowed to initialize jobserver
> and connect to it, perhaps other tools needing parallelism during build
> (GCC, ninja, llvm, ...) would be able to use common protocol.
Can be a nice GSoC project for next year?
Martin
>
> Honza
>