On Fri, Apr 20, 2018 at 4:26 AM, Takuto Ikuta <[email protected]> wrote:
> 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. > +thakis@ The owner has been actively reviewing PRs of late, so don't give up hope completely :). However, let's keep that separate from the proposal to reduce the serialization, which we can discuss in the GN thread that you've created. -- Dirk > > >> >>> >>> >>> >>>> >>>> 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. >> > > -- > -- > 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-dev/CALNjmMrOt0YmrEQEBAqVPwGHLn% > 2BbQ4b%3D8YRJ3-na6%3Dtry_ssbQ%40mail.gmail.com > <https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CALNjmMrOt0YmrEQEBAqVPwGHLn%2BbQ4b%3D8YRJ3-na6%3Dtry_ssbQ%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.
