|
|
Created:
4 years, 3 months ago by brucedawson Modified:
3 years, 8 months ago CC:
chromium-reviews, blink-reviews Target Ref:
refs/pending/heads/master Project:
chromium Visibility:
Public. |
DescriptionEnable incremental linking for blink_core, 32-bit
Incremental linking is enabled by default on debug component builds on
Windows but has long been disabled for blink_core because it didn't
work. VS 2015 Update 3 fixes some incremental linking bugs and at some
point the .ilk file limit was raised from 2 GiB to 4 GiB so incremental
linking now works. This takes the elapsed time for these commands:
> touch third_party\WebKit\Source\core\html\AutoplayExperimentHelper.cpp
> ninja -d keeprsp -C out\Debug_component chrome
from ~400 s to ~10 s. Which is faster.
Most of the speed up is because incremental linking is faster than
full linking. The rest comes because when blink_core.dll is
incrementally linked then its import lib (blink_core.dll.lib) is not
updated which means that the subsequent 21 build steps (including
linking chrome.dll) are completely skipped.
On 64-bit builds the .ilk file is still too large and enabling
incremental linking doesn't cause build failures but doesn't help,
and probably slows down the build (due to creating the huge .ilk
file).
This change also deletes the /maxilksize flag. Currently this is
artificially restricting us to an old/obsolete limit. The .ilk file
for blink_core.dll is dangerously close to the old limit, but nowhere
near the new limit.
BUG=560475
Committed: https://crrev.com/f786d3a73671671237e8ab61d0d97d85a8db7d3c
Cr-Commit-Position: refs/heads/master@{#417852}
Patch Set 1 #
Messages
Total messages: 24 (14 generated)
The CQ bit was checked by brucedawson@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 incremental linking for blink_core, 32-bit Incremental linking is enabled by default on debug component builds on Windows but has long been disabled for blink_core because it didn't work. VS 2015 Update 3 fixes some incremental linking bugs and at some point the .ilk file limit was raised from 2 GiB to 4 GiB so incremental linking now works. This takes the elapsed time for these commands: > touch third_party\WebKit\Source\core\html\AutoplayExperimentHelper.cpp > ninja -d keeprsp -C out\Debug_component chrome from ~400 s to ~10 s. Which is faster. On 64-bit builds the .ilk file is still too large. This change also deletes the /maxilksize flag. Currently this is artificially restricting us to an old/obsolete limit. BUG=560475 ========== to ========== Enable incremental linking for blink_core, 32-bit Incremental linking is enabled by default on debug component builds on Windows but has long been disabled for blink_core because it didn't work. VS 2015 Update 3 fixes some incremental linking bugs and at some point the .ilk file limit was raised from 2 GiB to 4 GiB so incremental linking now works. This takes the elapsed time for these commands: > touch third_party\WebKit\Source\core\html\AutoplayExperimentHelper.cpp > ninja -d keeprsp -C out\Debug_component chrome from ~400 s to ~10 s. Which is faster. Most of the speed up is because incremental linking is faster than full linking. The rest comes because when blink_core.dll is incrementally linked then its import lib (blink_core.dll.lib) is not updated which means that the subsequent 21 build steps (including linking chrome.dll) are completely skipped. On 64-bit builds the .ilk file is still too large. This change also deletes the /maxilksize flag. Currently this is artificially restricting us to an old/obsolete limit. BUG=560475 ==========
Description was changed from ========== Enable incremental linking for blink_core, 32-bit Incremental linking is enabled by default on debug component builds on Windows but has long been disabled for blink_core because it didn't work. VS 2015 Update 3 fixes some incremental linking bugs and at some point the .ilk file limit was raised from 2 GiB to 4 GiB so incremental linking now works. This takes the elapsed time for these commands: > touch third_party\WebKit\Source\core\html\AutoplayExperimentHelper.cpp > ninja -d keeprsp -C out\Debug_component chrome from ~400 s to ~10 s. Which is faster. Most of the speed up is because incremental linking is faster than full linking. The rest comes because when blink_core.dll is incrementally linked then its import lib (blink_core.dll.lib) is not updated which means that the subsequent 21 build steps (including linking chrome.dll) are completely skipped. On 64-bit builds the .ilk file is still too large. This change also deletes the /maxilksize flag. Currently this is artificially restricting us to an old/obsolete limit. BUG=560475 ========== to ========== Enable incremental linking for blink_core, 32-bit Incremental linking is enabled by default on debug component builds on Windows but has long been disabled for blink_core because it didn't work. VS 2015 Update 3 fixes some incremental linking bugs and at some point the .ilk file limit was raised from 2 GiB to 4 GiB so incremental linking now works. This takes the elapsed time for these commands: > touch third_party\WebKit\Source\core\html\AutoplayExperimentHelper.cpp > ninja -d keeprsp -C out\Debug_component chrome from ~400 s to ~10 s. Which is faster. Most of the speed up is because incremental linking is faster than full linking. The rest comes because when blink_core.dll is incrementally linked then its import lib (blink_core.dll.lib) is not updated which means that the subsequent 21 build steps (including linking chrome.dll) are completely skipped. On 64-bit builds the .ilk file is still too large and enabling incremental linking doesn't cause build failures but doesn't help, and probably slows down the build (due to creating the huge .ilk file). This change also deletes the /maxilksize flag. Currently this is artificially restricting us to an old/obsolete limit. The .ilk file for blink_core.dll is dangerously close to the old limit, but nowhere near the old limit. BUG=560475 ==========
brucedawson@chromium.org changed reviewers: + scottmg@chromium.org
40x faster incremental builds of blink_core! (some restrictions may apply, 32-bit only, probably requires VS 2015 Update 3).
lgtm It's too bad to hear that x64 is that much larger. We'd better get on that request for an int64 instead of just a uint32 I guess. :/
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 brucedawson@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
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presub...)
brucedawson@chromium.org changed reviewers: + dpranke@chromium.org
Dirk, PTAL.
Description was changed from ========== Enable incremental linking for blink_core, 32-bit Incremental linking is enabled by default on debug component builds on Windows but has long been disabled for blink_core because it didn't work. VS 2015 Update 3 fixes some incremental linking bugs and at some point the .ilk file limit was raised from 2 GiB to 4 GiB so incremental linking now works. This takes the elapsed time for these commands: > touch third_party\WebKit\Source\core\html\AutoplayExperimentHelper.cpp > ninja -d keeprsp -C out\Debug_component chrome from ~400 s to ~10 s. Which is faster. Most of the speed up is because incremental linking is faster than full linking. The rest comes because when blink_core.dll is incrementally linked then its import lib (blink_core.dll.lib) is not updated which means that the subsequent 21 build steps (including linking chrome.dll) are completely skipped. On 64-bit builds the .ilk file is still too large and enabling incremental linking doesn't cause build failures but doesn't help, and probably slows down the build (due to creating the huge .ilk file). This change also deletes the /maxilksize flag. Currently this is artificially restricting us to an old/obsolete limit. The .ilk file for blink_core.dll is dangerously close to the old limit, but nowhere near the old limit. BUG=560475 ========== to ========== Enable incremental linking for blink_core, 32-bit Incremental linking is enabled by default on debug component builds on Windows but has long been disabled for blink_core because it didn't work. VS 2015 Update 3 fixes some incremental linking bugs and at some point the .ilk file limit was raised from 2 GiB to 4 GiB so incremental linking now works. This takes the elapsed time for these commands: > touch third_party\WebKit\Source\core\html\AutoplayExperimentHelper.cpp > ninja -d keeprsp -C out\Debug_component chrome from ~400 s to ~10 s. Which is faster. Most of the speed up is because incremental linking is faster than full linking. The rest comes because when blink_core.dll is incrementally linked then its import lib (blink_core.dll.lib) is not updated which means that the subsequent 21 build steps (including linking chrome.dll) are completely skipped. On 64-bit builds the .ilk file is still too large and enabling incremental linking doesn't cause build failures but doesn't help, and probably slows down the build (due to creating the huge .ilk file). This change also deletes the /maxilksize flag. Currently this is artificially restricting us to an old/obsolete limit. The .ilk file for blink_core.dll is dangerously close to the old limit, but nowhere near the new limit. BUG=560475 ==========
lgtm
The CQ bit was checked by brucedawson@chromium.org
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 incremental linking for blink_core, 32-bit Incremental linking is enabled by default on debug component builds on Windows but has long been disabled for blink_core because it didn't work. VS 2015 Update 3 fixes some incremental linking bugs and at some point the .ilk file limit was raised from 2 GiB to 4 GiB so incremental linking now works. This takes the elapsed time for these commands: > touch third_party\WebKit\Source\core\html\AutoplayExperimentHelper.cpp > ninja -d keeprsp -C out\Debug_component chrome from ~400 s to ~10 s. Which is faster. Most of the speed up is because incremental linking is faster than full linking. The rest comes because when blink_core.dll is incrementally linked then its import lib (blink_core.dll.lib) is not updated which means that the subsequent 21 build steps (including linking chrome.dll) are completely skipped. On 64-bit builds the .ilk file is still too large and enabling incremental linking doesn't cause build failures but doesn't help, and probably slows down the build (due to creating the huge .ilk file). This change also deletes the /maxilksize flag. Currently this is artificially restricting us to an old/obsolete limit. The .ilk file for blink_core.dll is dangerously close to the old limit, but nowhere near the new limit. BUG=560475 ========== to ========== Enable incremental linking for blink_core, 32-bit Incremental linking is enabled by default on debug component builds on Windows but has long been disabled for blink_core because it didn't work. VS 2015 Update 3 fixes some incremental linking bugs and at some point the .ilk file limit was raised from 2 GiB to 4 GiB so incremental linking now works. This takes the elapsed time for these commands: > touch third_party\WebKit\Source\core\html\AutoplayExperimentHelper.cpp > ninja -d keeprsp -C out\Debug_component chrome from ~400 s to ~10 s. Which is faster. Most of the speed up is because incremental linking is faster than full linking. The rest comes because when blink_core.dll is incrementally linked then its import lib (blink_core.dll.lib) is not updated which means that the subsequent 21 build steps (including linking chrome.dll) are completely skipped. On 64-bit builds the .ilk file is still too large and enabling incremental linking doesn't cause build failures but doesn't help, and probably slows down the build (due to creating the huge .ilk file). This change also deletes the /maxilksize flag. Currently this is artificially restricting us to an old/obsolete limit. The .ilk file for blink_core.dll is dangerously close to the old limit, but nowhere near the new limit. BUG=560475 ==========
Message was sent while issue was closed.
Committed patchset #1 (id:1)
Message was sent while issue was closed.
Description was changed from ========== Enable incremental linking for blink_core, 32-bit Incremental linking is enabled by default on debug component builds on Windows but has long been disabled for blink_core because it didn't work. VS 2015 Update 3 fixes some incremental linking bugs and at some point the .ilk file limit was raised from 2 GiB to 4 GiB so incremental linking now works. This takes the elapsed time for these commands: > touch third_party\WebKit\Source\core\html\AutoplayExperimentHelper.cpp > ninja -d keeprsp -C out\Debug_component chrome from ~400 s to ~10 s. Which is faster. Most of the speed up is because incremental linking is faster than full linking. The rest comes because when blink_core.dll is incrementally linked then its import lib (blink_core.dll.lib) is not updated which means that the subsequent 21 build steps (including linking chrome.dll) are completely skipped. On 64-bit builds the .ilk file is still too large and enabling incremental linking doesn't cause build failures but doesn't help, and probably slows down the build (due to creating the huge .ilk file). This change also deletes the /maxilksize flag. Currently this is artificially restricting us to an old/obsolete limit. The .ilk file for blink_core.dll is dangerously close to the old limit, but nowhere near the new limit. BUG=560475 ========== to ========== Enable incremental linking for blink_core, 32-bit Incremental linking is enabled by default on debug component builds on Windows but has long been disabled for blink_core because it didn't work. VS 2015 Update 3 fixes some incremental linking bugs and at some point the .ilk file limit was raised from 2 GiB to 4 GiB so incremental linking now works. This takes the elapsed time for these commands: > touch third_party\WebKit\Source\core\html\AutoplayExperimentHelper.cpp > ninja -d keeprsp -C out\Debug_component chrome from ~400 s to ~10 s. Which is faster. Most of the speed up is because incremental linking is faster than full linking. The rest comes because when blink_core.dll is incrementally linked then its import lib (blink_core.dll.lib) is not updated which means that the subsequent 21 build steps (including linking chrome.dll) are completely skipped. On 64-bit builds the .ilk file is still too large and enabling incremental linking doesn't cause build failures but doesn't help, and probably slows down the build (due to creating the huge .ilk file). This change also deletes the /maxilksize flag. Currently this is artificially restricting us to an old/obsolete limit. The .ilk file for blink_core.dll is dangerously close to the old limit, but nowhere near the new limit. BUG=560475 Committed: https://crrev.com/f786d3a73671671237e8ab61d0d97d85a8db7d3c Cr-Commit-Position: refs/heads/master@{#417852} ==========
Message was sent while issue was closed.
Patchset 1 (id:??) landed as https://crrev.com/f786d3a73671671237e8ab61d0d97d85a8db7d3c Cr-Commit-Position: refs/heads/master@{#417852}
Message was sent while issue was closed.
On 2016/09/11 01:52:45, commit-bot: I haz the power wrote: > Patchset 1 (id:??) landed as > https://crrev.com/f786d3a73671671237e8ab61d0d97d85a8db7d3c > Cr-Commit-Position: refs/heads/master@{#417852} |