I sent proposal of link_deps to gn-dev. The proposal will fix the issue next time. https://groups.google.com/a/chromium.org/forum/#!topic/gn-dev/1DiphV5ZnqU
2018-04-20 15:39 GMT+09:00 Jakob Gruber <[email protected]>: > On Fri, Apr 20, 2018 at 5:40 AM, Takuto Ikuta <[email protected]> wrote: > >> 2018-04-19 23:12 GMT+09:00 Marja Hölttä <[email protected]>: >> >>> Slightly tangential: Just by looking at the trace, it would already help >>> if some builders got started with the big files (code-stub-assembler.cc and >>> objects.cc) right at the beginning, instead of first doing some smaller >>> tasks and only then getting started with the bigger ones. Is that doable? >>> >>> (That is orthogonal to the problem that when mksnapshot is running, >>> nothing else gets done.) >>> >> >> Yes. There is some effort for better scheduling on ninja side. >> https://github.com/ninja-build/ninja/pull/1333 >> > > That link is about explicit build orders - would it make sense to try and > distribute compile work evenly over builders, taking e.g. file size as a > metric to approximate compile time? > I want to do some investigation for this, but ninja's owner does not actively review PRs. But if I could sure that there is large improvement, I will ping them. > >> >> >> >>> >>> On Thu, Apr 19, 2018 at 3:25 PM, Takuto Ikuta <[email protected]> >>> wrote: >>> >>>> >>>> >>>> 2018-04-19 21:47 GMT+09:00 Daniel Bratell <[email protected]>: >>>> >>>>> This is something I also would like to see solved. The long phase in >>>>> the middle can be even more pronounced in Chromium jumbo builds and from a >>>>> high level it looks like it ought to be fixable. >>>>> >>>>> I would look for a solution that does not require adding another >>>>> dependency type though. Brett Wilson has stated many times that the >>>>> coarse >>>>> dependency system in gn is intentional because there were so many subtle >>>>> dependency bugs with gyp's more fine grained dependencies. >>>>> >>>> >>>> Currently it looks there are no way to introduce dependency containing >>>> action target that is linked but does not block compiling for >>>> shared_library and static_library in GN. >>>> If we don't want to introduce another dependency type, I think we can >>>> do by using source_set for target needs to be linked with libv8.so instead >>>> of component and move v8 dependency to final executable. >>>> But I expect this will cause long link time. >>>> >>>> I don't know gyp's era and how its fine grained dependencies were not >>>> good, but link only dependency will give us short build time. >>>> link only dependency will also be applicable to yasm_assemble action in >>>> addition to code generator. >>>> >>>> >>>>> >>>>> /Daniel >>>>> >>>>> >>>>> On Thu, 19 Apr 2018 11:31:27 +0200, 'Takuto Ikuta' via Chromium-dev < >>>>> [email protected]> wrote: >>>>> >>>>> >>>>> >>>>> 2018-04-19 17:56 GMT+09:00 Jakob Gruber <[email protected]>: >>>>> >>>>>> I commented on the doc. Unfortunately, I don't think it will be >>>>>> possible to >>>>>> turn mksnapshot into a data_dep due to embedded builtins (mksnapshot >>>>>> generates embedded.cc, required to build libv8.so). >>>>>> >>>>>> >>>>> Thank you for comment! Yeah, it is unfortunate that v8 generates >>>>> embedded.cc. >>>>> I'll reconsider the way. Introducing new dependency type like >>>>> link_deps to GN might be necessary. >>>>> >>>>> >>>>> >>>>>> But looking at the graph above, it seems like splitting up >>>>>> code-stub-assembler.cc may be >>>>>> something to investigate? >>>>>> >>>>>> >>>>> I think so. Some files in v8 took very long compile time. I hope those >>>>> files are separated to utilize parallelism. >>>>> >>>>> >>>>>> On Thu, Apr 19, 2018 at 10:48 AM, Andrew Grieve <[email protected] >>>>>> > wrote: >>>>>> >>>>>>> v8 build times were recently brought up as an issue ( >>>>>>> https://bugs.chromium.org/p/v8/issues/detail?id=7629), so I think >>>>>>> your timing here is great! >>>>>>> >>>>>>> I'm not on v8, but read through your proposal and it sounds good to >>>>>>> me! >>>>>>> >>>>>>> On Thu, Apr 19, 2018 at 10:09 AM, Takuto Ikuta <[email protected]> >>>>>>> wrote: >>>>>>> >>>>>>>> Hi chromium folks and v8 foks. >>>>>>>> >>>>>>>> >>>>>>>> When I build chrome, I see serialized dependency between chrome and >>>>>>>> V8 like below build trace. >>>>>>>> >>>>>>>> This serialized dependency makes build time slow and slowness by >>>>>>>> this serialized dependency becomes relatively large in highly >>>>>>>> parallelizable build. >>>>>>>> I want to reduce this serialized dependency by changing BUILD.gn. >>>>>>>> >>>>>>>> More description of my proposal is here. >>>>>>>> https://docs.google.com/document/d/1022AD3D5NtCTP0i7m-c_7Jfo >>>>>>>> Hu6PkJkAyePEC2ODMD8/edit?usp=sharing >>>>>>>> If you have something, please give me feedback. >>>>>>>> >>>>>>>> Thanks, Takuto >>>>>>>> -- >>>>>>>> -- >>>>>>>> Chromium Developers mailing list: [email protected] >>>>>>>> View archives, change email options, or unsubscribe: >>>>>>>> http://groups.google.com/a/chromium.org/group/chromium-dev >>>>>>>> --- >>>>>>>> You received this message because you are subscribed to the Google >>>>>>>> Groups "Chromium-dev" group. >>>>>>>> To view this discussion on the web visit >>>>>>>> https://groups.google.com/a/chromium.org/d/msgid/chromium-de >>>>>>>> v/CALNjmMrbWafsnCbqYm%3DK9c18%2BsYzOmCqHW--rdvihZG-VVZS9g%40 >>>>>>>> mail.gmail.com >>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CALNjmMrbWafsnCbqYm%3DK9c18%2BsYzOmCqHW--rdvihZG-VVZS9g%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>>>>> . >>>>>>>> >>>>>>> >>>>>>> -- >>>>>>> -- >>>>>>> v8-dev mailing list >>>>>>> [email protected] >>>>>>> http://groups.google.com/group/v8-dev >>>>>>> --- >>>>>>> You received this message because you are subscribed to the Google >>>>>>> Groups "v8-dev" group. >>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>> send an email to [email protected]. >>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>> >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> Takuto Ikuta >>>>> Software Engineer in Tokyo >>>>> Chrome Infrastructure (goma team) >>>>> -- >>>>> -- >>>>> Chromium Developers mailing list: [email protected] >>>>> View archives, change email options, or unsubscribe: >>>>> http://groups.google.com/a/chromium.org/group/chromium-dev >>>>> --- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "Chromium-dev" group. >>>>> To unsubscribe from this group and stop receiving emails from it, send >>>>> an email to [email protected]. >>>>> To view this discussion on the web visit >>>>> https://groups.google.com/a/chromium.org/d/msgid/chromium-de >>>>> v/CALNjmMoDA3hyO-0G_esiG%3Dn4k8FJu%3Dhfd_ucBG5hRusL1OAuxA%40 >>>>> mail.gmail.com >>>>> <https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CALNjmMoDA3hyO-0G_esiG%3Dn4k8FJu%3Dhfd_ucBG5hRusL1OAuxA%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>> . >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> /* Opera Software, Linköping, Sweden: CEST (UTC+2) */ >>>>> >>>> >>>> -- >>>> -- >>>> v8-dev mailing list >>>> [email protected] >>>> http://groups.google.com/group/v8-dev >>>> --- >>>> You received this message because you are subscribed to the Google >>>> Groups "v8-dev" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to [email protected]. >>>> For more options, visit https://groups.google.com/d/optout. >>>> >>> >>> >>> >>> -- >>> >>> >>> Google Germany GmbH >>> >>> Erika-Mann-Straße 33 >>> <https://maps.google.com/?q=Erika-Mann-Stra%C3%9Fe+33+80636+M%C3%BCnchen&entry=gmail&source=g> >>> >>> 80636 München >>> <https://maps.google.com/?q=Erika-Mann-Stra%C3%9Fe+33+80636+M%C3%BCnchen&entry=gmail&source=g> >>> >>> Geschäftsführer: Paul Manicle, Halimah DeLaine Prado >>> >>> Registergericht und -nummer: Hamburg, HRB 86891 >>> >>> Sitz der Gesellschaft: Hamburg >>> >>> Diese E-Mail ist vertraulich. Falls sie diese fälschlicherweise erhalten >>> haben sollten, leiten Sie diese bitte nicht an jemand anderes weiter, >>> löschen Sie alle Kopien und Anhänge davon und lassen Sie mich bitte wissen, >>> dass die E-Mail an die falsche Person gesendet wurde. >>> >>> >>> >>> This e-mail is confidential. If you received this communication by >>> mistake, please don't forward it to anyone else, please erase all copies >>> and attachments, and please let me know that it has gone to the wrong >>> person. >>> >>> -- >>> -- >>> Chromium Developers mailing list: [email protected] >>> View archives, change email options, or unsubscribe: >>> http://groups.google.com/a/chromium.org/group/chromium-dev >>> --- >>> You received this message because you are subscribed to the Google >>> Groups "Chromium-dev" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To view this discussion on the web visit https://groups.google.com/a/ch >>> romium.org/d/msgid/chromium-dev/CAED6dUC%2BkyQrZUwnAWS7AsQWf >>> GNQAV5Zv7ggqPhbSV0zQnAnEA%40mail.gmail.com >>> <https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CAED6dUC%2BkyQrZUwnAWS7AsQWfGNQAV5Zv7ggqPhbSV0zQnAnEA%40mail.gmail.com?utm_medium=email&utm_source=footer> >>> . >>> >> >> >> >> -- >> Takuto Ikuta >> Software Engineer in Tokyo >> Chrome Infrastructure (goma team) >> > > Jakob Gruber > > Software Engineer > > [email protected] > > Google Germany GmbH > > Erika-Mann-Straße 33 > <https://maps.google.com/?q=Erika-Mann-Stra%C3%9Fe+33+80636+M%C3%BCnchen&entry=gmail&source=g> > > 80636 München > <https://maps.google.com/?q=Erika-Mann-Stra%C3%9Fe+33+80636+M%C3%BCnchen&entry=gmail&source=g> > > Geschäftsführer: Paul Manicle, Halimah DeLaine Prado > > Registergericht und -nummer: Hamburg, HRB 86891 > > Sitz der Gesellschaft: Hamburg > > Diese E-Mail ist vertraulich. Falls sie diese fälschlicherweise erhalten > haben sollten, leiten Sie diese bitte nicht an jemand anderes weiter, > löschen Sie alle Kopien und Anhänge davon und lassen Sie mich bitte wissen, > dass die E-Mail an die falsche Person gesendet wurde. > > > This e-mail is confidential. If you received this communication by > mistake, please don't forward it to anyone else, please erase all copies > and attachments, and please let me know that it has gone to the wrong > person. > -- -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups "v8-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
