My understanding is that the snapshot file is bundled in the shipping package but outside of the executable binary. IIUC, content_shell binary file doesn't contain the snapshot image.
2021年9月8日(水) 19:33 Rahul Patel <patelrahulkum...@gmail.com>: > did you see any size reduction in the content_shell binary? after > disabling it. > > On Wed, Sep 8, 2021 at 3:39 PM Yuki Shiino <yukishi...@chromium.org> > wrote: > >> I've tried repro on GNU/Linux, and content_shell runs fine without the >> snapshot file. >> >> >> 2021年9月8日(水) 19:03 Rahul Patel <patelrahulkum...@gmail.com>: >> >>> Yes, I am building it with that flag, i am able to build the code but >>> it's failing to run. >>> >>> On Wed, Sep 8, 2021, 3:29 PM Yuki Shiino <yukishi...@chromium.org> >>> wrote: >>> >>>> 2021年9月8日(水) 18:30 Rahul Patel <patelrahulkum...@gmail.com>: >>>> >>>>> Thanks for updating Yuki, i see after using the >>>>> use_v8_context_snapshot = false flag, the v8_context_snapshot.bin >>>>> file not getting generated in the out/Release. >>>>> >>>>> 1. But when I am running the content_shell without this file getting >>>>> the following error? >>>>> >>>>> # >>>>> >>>>> # Fatal error in , line 0 >>>>> >>>>> # Failed to deserialize the V8 snapshot blob. This can mean that the >>>>> snapshot blob file is corrupted or missing. >>>>> >>>> >>>> Have you built `content_shell` with the flag set to false? >>>> >>>> On my env (GNU/Linux), content_shell works fine without >>>> v8_context_snapshot.bin. >>>> >>>> >>>> >>>>> >>>>> Also not seeing any reduction in the size of my .so file, that means >>>>> disabling v8_context_snapshot will help not depending on >>>>> v8_context_snapshot.bin >>>>> file any more, and this is the only win? >>>>> >>>> >>>> .so doesn't contain v8_context_snapshot.bin, so it's no wonder. The >>>> shipping size should be different between with and without the snapshot. >>>> We've not enabled the flag on Android because of the APK size, IIUC. >>>> >>>> >>>> >>>>> >>>>> On Tue, Sep 7, 2021 at 5:57 PM Yuki Shiino <yukishi...@chromium.org> >>>>> wrote: >>>>> >>>>>> You can disable the feature by setting a GN flag to false. >>>>>> >>>>>> https://source.chromium.org/chromium/chromium/src/+/main:tools/v8_context_snapshot/v8_context_snapshot.gni;drc=6b626d7f721fc8805bd9f615e60a25f5b4d892fd;l=18 >>>>>> >>>>>> You can set `use_v8_context_snapshot` to false. >>>>>> >>>>>> Cheers, >>>>>> Yuki Shiino >>>>>> >>>>>> >>>>>> 2021年9月7日(火) 21:09 Rahul Patel <patelrahulkum...@gmail.com>: >>>>>> >>>>>>> Nice feature, i have a quick questions on enabled this feature? >>>>>>> >>>>>>> Just for my learning purpose Can we disabled it for linux too? >>>>>>> >>>>>>> On Tuesday, March 20, 2018 at 7:56:59 AM UTC+5:30 Hitoshi Yoshida >>>>>>> wrote: >>>>>>> >>>>>>>> >>>>>>>> 2018年3月20日(火) 3:20 Dirk Pranke <dpr...@chromium.org>: >>>>>>>> >>>>>>>>> Isn't it already enabled for release desktop builds? I thought >>>>>>>>> from up-thread it was only disabled for Android, CrOS, and >>>>>>>>> cross-builds. >>>>>>>>> >>>>>>>> Yes, it's already enabled on desktop platforms. >>>>>>>> We would like to additionally enable it on (a part of) Android >>>>>>>> builds. >>>>>>>> CrOS and other cross-build platforms are not supported yet, and not >>>>>>>> the target of this update. >>>>>>>> >>>>>>>> >>>>>>>>> If this requires us to compile Blink twice, I think it's probably >>>>>>>>> not worth it to enable for Android release builds, just like we >>>>>>>>> wouldn't >>>>>>>>> enable PGO or LTO by default. >>>>>>>>> >>>>>>>>> -- Dirk >>>>>>>>> >>>>>>>>> On Mon, Mar 19, 2018 at 11:12 AM, Ojan Vafai <oj...@chromium.org> >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>>> Is there an eventual path towards enabling this for release >>>>>>>>>> builds and desktop? A lot of people do local performance testing on >>>>>>>>>> release >>>>>>>>>> builds, so it's best if the differences between release and official >>>>>>>>>> are as >>>>>>>>>> minimal as possible to avoid performance testing on something too >>>>>>>>>> different >>>>>>>>>> from what we see in the wild. >>>>>>>>>> >>>>>>>>>> I believe it does not affect most metrics, but yes, it's better >>>>>>>> to care performance tests. >>>>>>>> Thank you for pointing it out. >>>>>>>> >>>>>>>> >>>>>>>>> >>>>>>>>>> On Mon, Mar 19, 2018 at 12:49 AM Hitoshi Yoshida < >>>>>>>>>> pe...@chromium.org> wrote: >>>>>>>>>> >>>>>>>>> I'm sorry not to reply this thread so long. >>>>>>>>>>> >>>>>>>>>>> As an internal discussion, we decide to enable this feature on >>>>>>>>>>> official build Android Chrome. >>>>>>>>>>> (To move this decision public forward, we also need other >>>>>>>>>>> agreements. And I'll send another Intent-to-Ship for it, with >>>>>>>>>>> adding some >>>>>>>>>>> metrics.) >>>>>>>>>>> >>>>>>>>>>> So the current situation about this feature on Android Chromium >>>>>>>>>>> is >>>>>>>>>>> - Disabled by default. >>>>>>>>>>> - Each developer can enable it with having >>>>>>>>>>> "use_v8_context_snapshot=true" in their arg.gn. (Yes, you >>>>>>>>>>> already can try it locally.) >>>>>>>>>>> - It needs to build Blink twice (once for Android, and the other >>>>>>>>>>> for the host machine), so it takes time to build. >>>>>>>>>>> and we'd like to update as >>>>>>>>>>> - Enable it on official build (is_official_build=true) >>>>>>>>>>> - Still need to put "use_v8_context_snapshot=true" if each >>>>>>>>>>> developer wants to enable it. >>>>>>>>>>> - The change will not affect on general developers environment, >>>>>>>>>>> i.e. in local build and CQ. >>>>>>>>>>> - General bugs of V8ContextSnapshot feature will be caught on >>>>>>>>>>> other platforms' trybots in CQ. >>>>>>>>>>> - Android specific bugs of V8ContextSnapshot feature will be >>>>>>>>>>> caught in an official bot, which is out of CQ. But the case should >>>>>>>>>>> be rare, >>>>>>>>>>> and it should be reproduced on local machines. >>>>>>>>>>> >>>>>>>>>>> stay tuned for the intent-to-ship. >>>>>>>>>>> >>>>>>>>>> 2018年2月2日(金) 14:48 Kentaro Hara <har...@chromium.org>: >>>>>>>>>>> >>>>>>>>>> Here are a couple of my thoughts: >>>>>>>>>>>> >>>>>>>>>>>> - I don't think it's acceptable to significantly regress build >>>>>>>>>>>> time on non-Google developers. >>>>>>>>>>>> >>>>>>>>>>>> - In the first place, I don't yet understand why we have to >>>>>>>>>>>> build Blink twice in the cross-compiling environment. Given that >>>>>>>>>>>> the >>>>>>>>>>>> context snapshot is used by the target machine, the snapshot >>>>>>>>>>>> should be >>>>>>>>>>>> taken at the target machine -- then why do we need to build Blink >>>>>>>>>>>> on the >>>>>>>>>>>> host machine? >>>>>>>>>>>> >>>>>>>>>>>> - Either way, I think we need to come up with a plan that 1) >>>>>>>>>>>> doesn't significantly affect build time of trybots or non-Google >>>>>>>>>>>> developers >>>>>>>>>>>> and 2) doesn't regress test coverage. Let's discuss the details >>>>>>>>>>>> among >>>>>>>>>>>> experts offline and get back to this thread. >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> On Thu, Feb 1, 2018 at 8:14 PM, Daniel Bratell < >>>>>>>>>>>> bra...@opera.com> wrote: >>>>>>>>>>>> >>>>>>>>>>> From a non-Googlers point of view, I am curious about the effect >>>>>>>>>>>>> when you don't have access to 500 parallel cores to compile on. >>>>>>>>>>>>> Not >>>>>>>>>>>>> everyone have access to that kind of hardware. If the added >>>>>>>>>>>>> targets end up >>>>>>>>>>>>> using 200 cores that would otherwise have been idle, I can see >>>>>>>>>>>>> why it only >>>>>>>>>>>>> took 10% more time, but it would look completely different for >>>>>>>>>>>>> someone who >>>>>>>>>>>>> uses all available cores already. >>>>>>>>>>>>> >>>>>>>>>>>>> /Daniel >>>>>>>>>>>>> >>>>>>>>>>>>> On Thu, 01 Feb 2018 05:00:19 +0100, Hitoshi Yoshida < >>>>>>>>>>>>> pe...@chromium.org> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>> I'm sorry. The number 29->46 minutes is not reliable, because >>>>>>>>>>>>> trybots builds incrementally. >>>>>>>>>>>>> I tried to build everything on my machine using goma. >>>>>>>>>>>>> $ ninja -j 500 -C out/Android >>>>>>>>>>>>> Then the compile time changes from 17'30" to 19'16", and hence >>>>>>>>>>>>> its regression is ~10%. >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> 2018-01-30 2:14 GMT+09:00 Daniel Bratell <bra...@opera.com>: >>>>>>>>>>>>> >>>>>>>>>>>>>> On Wed, 24 Jan 2018 07:12:02 +0100, Hitoshi Yoshida < >>>>>>>>>>>>>> pe...@chromium.org> wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>> Currently v8_context_snapshot.bin is created if >>>>>>>>>>>>>> use_v8_context_snapshot is true. >>>>>>>>>>>>>> It is set true by default depending on the build environment >>>>>>>>>>>>>> (see v8_context_snapshot.gni >>>>>>>>>>>>>> <https://cs.chromium.org/chromium/src/tools/v8_context_snapshot/v8_context_snapshot.gni>) >>>>>>>>>>>>>> but you can set it false in gn args. >>>>>>>>>>>>>> >>>>>>>>>>>>>> IIUC, most trybots do not build blink twice, because they are >>>>>>>>>>>>>> not cross-build bots or setting use_v8_context_snapshot >>>>>>>>>>>>>> false. >>>>>>>>>>>>>> However, in near future, we want to enable this feature also >>>>>>>>>>>>>> on Android, and it must increase compile time for x1.5. >>>>>>>>>>>>>> (Some my WIP CLs show that compile time will become 46 min. >>>>>>>>>>>>>> from 29 min on android_n5x_swarming_rel >>>>>>>>>>>>>> <https://ci.chromium.org/buildbot/tryserver.chromium.android/android_n5x_swarming_rel/> >>>>>>>>>>>>>> .) >>>>>>>>>>>>>> So it worth discussing what the default value of >>>>>>>>>>>>>> use_v8_context_snapshot should be. >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> 29 -> 46 minutes, that would be with goma? What would be the >>>>>>>>>>>>>> change for a local build? >>>>>>>>>>>>>> >>>>>>>>>>>>>> I'm not sure exactly where this will apply but 50% higher >>>>>>>>>>>>>> compilation times in general would be painful when it can >>>>>>>>>>>>>> already take >>>>>>>>>>>>>> hours. >>>>>>>>>>>>>> >>>>>>>>>>>>>> /Daniel >>>>>>>>>>>>>> >>>>>>>>>>>>>> -- >>>>>>>>>>>>>> /* Opera Software, Linköping, Sweden: CET (UTC+1) */ >>>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> -- >>>>>>>>>>>>> Hitoshi Yoshida (Peria) >>>>>>>>>>>>> email: pe...@chromium.org >>>>>>>>>>>>> -- >>>>>>>>>>>>> You received this message because you are subscribed to the >>>>>>>>>>>>> Google Groups "blink-dev" group. >>>>>>>>>>>>> >>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails from >>>>>>>>>>>>> it, send an email to blink-dev+...@chromium.org. >>>>>>>>>>>>> >>>>>>>>>>>>> To view this discussion on the web visit >>>>>>>>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAJnxdXA5%2BNuNUWs677pOAVWfWbsbFjSJx-G5yG64WAFjJ1g5yw%40mail.gmail.com >>>>>>>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAJnxdXA5%2BNuNUWs677pOAVWfWbsbFjSJx-G5yG64WAFjJ1g5yw%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>>>>>>>>>> . >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> -- >>>>>>>>>>>>> /* Opera Software, Linköping, Sweden: CET (UTC+1) */ >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> -- >>>>>>>>>>>> Kentaro Hara, Tokyo, Japan >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> Hitoshi Yoshida (Peria) >>>>>>>>>>> email: pe...@chromium.org >>>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>>> You received this message because you are subscribed to the >>>>>>>>>>> Google Groups "blink-dev" group. >>>>>>>>>>> >>>>>>>>>> To view this discussion on the web visit >>>>>>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAJnxdXCbJTJDMEB7OaWv3XhQi%2BJ_E9i%3D0-AV0nEwBt18jVAYyw%40mail.gmail.com >>>>>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAJnxdXCbJTJDMEB7OaWv3XhQi%2BJ_E9i%3D0-AV0nEwBt18jVAYyw%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>>>>>>>> . >>>>>>>>>>> >>>>>>>>>> >>>>>>>> -- >>>>>>>> Hitoshi Yoshida (Peria) >>>>>>>> email: pe...@chromium.org >>>>>>>> >>>>>>> -- You received this message because you are subscribed to the Google Groups "blink-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscr...@chromium.org. To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAN0uC_Tqja88tB6X%3D2%2BxHY9SR9NHvg%2Bw%3DhgM9nyW2ks3MpQd9w%40mail.gmail.com.