|
|
Created:
4 years, 3 months ago by jgruber Modified:
4 years, 2 months ago Reviewers:
jochen (gone - plz use gerrit), ahaas, Michael Achenbach CC:
jochen (gone - plz use gerrit), v8-reviews_googlegroups.com Target Ref:
refs/pending/heads/master Project:
v8 Visibility:
Public. |
DescriptionEnable component builds for fuzzers
V8 is collecting a growing amount of fuzzers, all of which take substantial
space on the bots and in chromium build archives. This CL improves that
situation by allowing component (shared library) builds for almost all fuzzers.
The parser fuzzer is handled as an exception since it would require exporting a
large number of additional functions.
A component build results in about a 50-100x improvement in file size for each
fuzzer (~50M-100M to around 1.1M).
BUG=chromium:648864
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_compile_dbg_ng;master.tryserver.chromium.android:android_clang_dbg_recipe
Committed: https://crrev.com/22606f0c29421d6a72e46595ec2995c7771ff070
Cr-Commit-Position: refs/heads/master@{#39709}
Patch Set 1 #Patch Set 2 : Export addtl symbols #Patch Set 3 : Move definition of ParserTarget{,Scope} to header #Patch Set 4 : Special-case parser fuzzer in shared builds #Patch Set 5 : external_config for regexp_fuzzer #Patch Set 6 : Set all fuzzers as internal_config_base #Patch Set 7 : Add GYP support #Patch Set 8 : Explicit external configs for fuzzer targets #
Total comments: 2
Patch Set 9 : Addtl. exports for chromium fuzzer targets #Patch Set 10 : Move PerThreadAssertScope exports to satisfy compiler #Patch Set 11 : Rebase #
Created: 4 years, 2 months ago
Messages
Total messages: 73 (53 generated)
The CQ bit was checked by jgruber@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: v8_win_nosnap_shared_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_win_nosnap_shared_rel_ng...)
The CQ bit was checked by jgruber@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: v8_win_nosnap_shared_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_win_nosnap_shared_rel_ng...)
The CQ bit was checked by jgruber@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: v8_win_nosnap_shared_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_win_nosnap_shared_rel_ng...)
The CQ bit was checked by jgruber@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Description was changed from ========== Enable component builds for fuzzers BUG=chromium:648864 ========== to ========== Enable component builds for fuzzers V8 is collecting a growing amount of fuzzers, all of which take substantial space on the bots and in chromium build archives. This CL improves that situation by allowing component (shared library) builds for almost all fuzzers. The parser fuzzer is handled as an exception since it would require exporting a large number of additional functions. A component build results in about a 50-100x improvement in file size for each fuzzer (~50M-100M to around 1.1M). BUG=chromium:648864 ==========
Description was changed from ========== Enable component builds for fuzzers V8 is collecting a growing amount of fuzzers, all of which take substantial space on the bots and in chromium build archives. This CL improves that situation by allowing component (shared library) builds for almost all fuzzers. The parser fuzzer is handled as an exception since it would require exporting a large number of additional functions. A component build results in about a 50-100x improvement in file size for each fuzzer (~50M-100M to around 1.1M). BUG=chromium:648864 ========== to ========== Enable component builds for fuzzers V8 is collecting a growing amount of fuzzers, all of which take substantial space on the bots and in chromium build archives. This CL improves that situation by allowing component (shared library) builds for almost all fuzzers. The parser fuzzer is handled as an exception since it would require exporting a large number of additional functions. A component build results in about a 50-100x improvement in file size for each fuzzer (~50M-100M to around 1.1M). BUG=chromium:648864 ==========
The CQ bit was checked by jgruber@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
jgruber@chromium.org changed reviewers: + ahaas@chromium.org, machenbach@chromium.org
jgruber@chromium.org changed reviewers: + jochen@chromium.org
does this work out of the box for the gyp build? should we bother to fix this in the gyp build at all?
On 2016/09/22 09:54:46, jochen (slow) wrote: > does this work out of the box for the gyp build? should we bother to fix this in > the gyp build at all? Added gyp support since it was easy in this case.
lgtm on the build files! Thanks a lot for working on this!
lgtm
The CQ bit was checked by machenbach@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
On 2016/09/22 at 10:29:49, jochen wrote: > lgtm lgtm, thank you very much for that!
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: v8_win_nosnap_shared_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_win_nosnap_shared_rel_ng...)
The CQ bit was checked by jgruber@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
The CQ bit was checked by jgruber@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from jochen@chromium.org, ahaas@chromium.org, machenbach@chromium.org Link to the patchset: https://codereview.chromium.org/2360983002/#ps140001 (title: "Explicit external configs for fuzzer targets")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Does the last patchset fix this? https://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium... https://codereview.chromium.org/2360983002/diff/140001/BUILD.gn File BUILD.gn (right): https://codereview.chromium.org/2360983002/diff/140001/BUILD.gn#newcode2336 BUILD.gn:2336: ":v8", Instead of adding external config everywhere you probably could have moved v8 to the public deps. But never mind.
The CQ bit was unchecked by machenbach@chromium.org
Description was changed from ========== Enable component builds for fuzzers V8 is collecting a growing amount of fuzzers, all of which take substantial space on the bots and in chromium build archives. This CL improves that situation by allowing component (shared library) builds for almost all fuzzers. The parser fuzzer is handled as an exception since it would require exporting a large number of additional functions. A component build results in about a 50-100x improvement in file size for each fuzzer (~50M-100M to around 1.1M). BUG=chromium:648864 ========== to ========== Enable component builds for fuzzers V8 is collecting a growing amount of fuzzers, all of which take substantial space on the bots and in chromium build archives. This CL improves that situation by allowing component (shared library) builds for almost all fuzzers. The parser fuzzer is handled as an exception since it would require exporting a large number of additional functions. A component build results in about a 50-100x improvement in file size for each fuzzer (~50M-100M to around 1.1M). BUG=chromium:648864 CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_compile_dbg_ng; ==========
The CQ bit was checked by machenbach@chromium.org
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Your CL was about to rely on recently removed CQ feature(s): * Specifying master names in CQ_INCLUDE_TRYBOTS part of description without "master." prefix is no longer supported: tryserver.chromium.linux For more details, see http://crbug.com/617627.
Description was changed from ========== Enable component builds for fuzzers V8 is collecting a growing amount of fuzzers, all of which take substantial space on the bots and in chromium build archives. This CL improves that situation by allowing component (shared library) builds for almost all fuzzers. The parser fuzzer is handled as an exception since it would require exporting a large number of additional functions. A component build results in about a 50-100x improvement in file size for each fuzzer (~50M-100M to around 1.1M). BUG=chromium:648864 CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_compile_dbg_ng; ========== to ========== Enable component builds for fuzzers V8 is collecting a growing amount of fuzzers, all of which take substantial space on the bots and in chromium build archives. This CL improves that situation by allowing component (shared library) builds for almost all fuzzers. The parser fuzzer is handled as an exception since it would require exporting a large number of additional functions. A component build results in about a 50-100x improvement in file size for each fuzzer (~50M-100M to around 1.1M). BUG=chromium:648864 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_compile_dbg_ng; ==========
The CQ bit was checked by machenbach@chromium.org
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by machenbach@chromium.org
Description was changed from ========== Enable component builds for fuzzers V8 is collecting a growing amount of fuzzers, all of which take substantial space on the bots and in chromium build archives. This CL improves that situation by allowing component (shared library) builds for almost all fuzzers. The parser fuzzer is handled as an exception since it would require exporting a large number of additional functions. A component build results in about a 50-100x improvement in file size for each fuzzer (~50M-100M to around 1.1M). BUG=chromium:648864 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_compile_dbg_ng; ========== to ========== Enable component builds for fuzzers V8 is collecting a growing amount of fuzzers, all of which take substantial space on the bots and in chromium build archives. This CL improves that situation by allowing component (shared library) builds for almost all fuzzers. The parser fuzzer is handled as an exception since it would require exporting a large number of additional functions. A component build results in about a 50-100x improvement in file size for each fuzzer (~50M-100M to around 1.1M). BUG=chromium:648864 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_compile_dbg_ng;master.tryserver.chromium.android:android_clang_dbg_recipe ==========
The CQ bit was checked by jgruber@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: v8_win_nosnap_shared_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_win_nosnap_shared_rel_ng...)
The CQ bit was checked by jgruber@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: v8_win64_rel_ng on master.tryserver.v8 (JOB_TIMED_OUT, no build URL) v8_win_compile_dbg on master.tryserver.v8 (JOB_TIMED_OUT, no build URL) v8_win_rel_ng on master.tryserver.v8 (JOB_TIMED_OUT, no build URL)
https://codereview.chromium.org/2360983002/diff/140001/BUILD.gn File BUILD.gn (right): https://codereview.chromium.org/2360983002/diff/140001/BUILD.gn#newcode2336 BUILD.gn:2336: ":v8", On 2016/09/22 11:22:07, machenbach (slow) wrote: > Instead of adding external config everywhere you probably could have moved v8 to > the public deps. But never mind. Leaving this to a cleanup commit as discussed offline - we could also possibly merge a couple of these fuzzer targets and move internal_config_base to public deps in fuzzer support.
still lgtm
The CQ bit was checked by jgruber@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from jochen@chromium.org, ahaas@chromium.org Link to the patchset: https://codereview.chromium.org/2360983002/#ps180001 (title: "Move PerThreadAssertScope exports to satisfy compiler")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: v8_presubmit on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_presubmit/builds/24893)
The CQ bit was checked by jgruber@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from jochen@chromium.org, ahaas@chromium.org, machenbach@chromium.org Link to the patchset: https://codereview.chromium.org/2360983002/#ps200001 (title: "Rebase")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Message was sent while issue was closed.
Description was changed from ========== Enable component builds for fuzzers V8 is collecting a growing amount of fuzzers, all of which take substantial space on the bots and in chromium build archives. This CL improves that situation by allowing component (shared library) builds for almost all fuzzers. The parser fuzzer is handled as an exception since it would require exporting a large number of additional functions. A component build results in about a 50-100x improvement in file size for each fuzzer (~50M-100M to around 1.1M). BUG=chromium:648864 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_compile_dbg_ng;master.tryserver.chromium.android:android_clang_dbg_recipe ========== to ========== Enable component builds for fuzzers V8 is collecting a growing amount of fuzzers, all of which take substantial space on the bots and in chromium build archives. This CL improves that situation by allowing component (shared library) builds for almost all fuzzers. The parser fuzzer is handled as an exception since it would require exporting a large number of additional functions. A component build results in about a 50-100x improvement in file size for each fuzzer (~50M-100M to around 1.1M). BUG=chromium:648864 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_compile_dbg_ng;master.tryserver.chromium.android:android_clang_dbg_recipe ==========
Message was sent while issue was closed.
Committed patchset #11 (id:200001)
Message was sent while issue was closed.
Description was changed from ========== Enable component builds for fuzzers V8 is collecting a growing amount of fuzzers, all of which take substantial space on the bots and in chromium build archives. This CL improves that situation by allowing component (shared library) builds for almost all fuzzers. The parser fuzzer is handled as an exception since it would require exporting a large number of additional functions. A component build results in about a 50-100x improvement in file size for each fuzzer (~50M-100M to around 1.1M). BUG=chromium:648864 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_compile_dbg_ng;master.tryserver.chromium.android:android_clang_dbg_recipe ========== to ========== Enable component builds for fuzzers V8 is collecting a growing amount of fuzzers, all of which take substantial space on the bots and in chromium build archives. This CL improves that situation by allowing component (shared library) builds for almost all fuzzers. The parser fuzzer is handled as an exception since it would require exporting a large number of additional functions. A component build results in about a 50-100x improvement in file size for each fuzzer (~50M-100M to around 1.1M). BUG=chromium:648864 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_compile_dbg_ng;master.tryserver.chromium.android:android_clang_dbg_recipe Committed: https://crrev.com/22606f0c29421d6a72e46595ec2995c7771ff070 Cr-Commit-Position: refs/heads/master@{#39709} ==========
Message was sent while issue was closed.
Patchset 11 (id:??) landed as https://crrev.com/22606f0c29421d6a72e46595ec2995c7771ff070 Cr-Commit-Position: refs/heads/master@{#39709}
Message was sent while issue was closed.
Impact so far: - This fixed our arm Chromebooks in debug! They could indeed not cope with the download sizes. Now green: https://build.chromium.org/p/client.v8.ports/builders/V8%20Arm%20-%20debug/bu... - Arm debug archive reduction 2.89 GiB down to 1.09 GiB - 63% space and traffic saved on GS and isolate server! https://build.chromium.org/p/client.v8.ports/builders/V8%20Arm%20-%20debug%20... vs. https://build.chromium.org/p/client.v8.ports/builders/V8%20Arm%20-%20debug%20... - Space reduction for some Chrome debug archives, e.g. 7.16 GiB down to 6.46 GiB - 10% saved https://build.chromium.org/p/chromium.linux/builders/Linux%20Builder%20%28dbg... vs. https://build.chromium.org/p/chromium.linux/builders/Linux%20Builder%20%28dbg... Will switch more v8 debug bots to shared libs to save space, traffic and upload/download/packing time on all of them.
Message was sent while issue was closed.
Moar impact on all v8 debug bots, around 70% space saved everywhere, examples: - Linux debug: 681.9 MiB down to 216.78 MiB - 68% space saved! https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20-%20debug%20bu... vs. https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20-%20debug%20bu... - Linux arm64 sim debug: ~2.4 GB down to ~795.0 MB - 68% space saved! https://chromium-swarm.appspot.com/user/task/318394bd5a5fdc10 vs. https://chromium-swarm.appspot.com/user/task/3183e382a0e89510 |