http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60295
--- Comment #1 from Jan Hubicka <hubicka at ucw dot cz> --- > It happens during a GCC LTO+FDO bootstrap with > > ../src-trunk/configure \ > --prefix=/usr/4.9.0 --enable-clocale=gnu --with-system-zlib > --enable-shared --with-demangler-in-ld --with-build-config=bootstrap-lto > --disable-werro > r --with-fpmath=sse --enable-languages=c,c++,fortran,java,lto,objc > > make -j 8 -C bld profiledbootstrap > > There are more than 120 lto1-wpa-stream processes forked due to r207515. > Are they really necessary? This does not happen for me. What -flto parameter you use? If you pass -flto or -flto=jobserv, you won't get multiple WPA forks from one LTO compilation. If you pass -flto=16 as I do, you will get 16 processes, if you manage to build 16 binaries at once, you will get 16^2. But just minute later you would get 16^2 ltrans processes, too, so I do not see this introducing a new bottleneck. I did some measurements of forked WPA memory use and it was always bellow ltrans use. Since bootstrap-lto passes only -flto, it also may be just some bug in parsing the parameters? stream_out (char *temp_filename, lto_symtab_encoder_t encoder, bool last) { #ifdef HAVE_WORKING_FORK static int nruns; if (!lto_parallelism || lto_parallelism == 1) { do_stream_out (temp_filename, encoder); return; } ... eventually do the fork. What is lto_paralellism for you? Honza > > -- > You are receiving this mail because: > You are on the CC list for the bug.