Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(229)

Issue 1833373002: Speed up interop patch file creation (Closed)

Created:
4 years, 9 months ago by terry
Modified:
4 years, 8 months ago
Reviewers:
Alan Knight, Jacob
CC:
reviews_dartlang.org
Base URL:
git@github.com:dart-lang/sdk.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Speed up interop patch file creation. Made a number of optimizations to reduce load time from 8 secs to 1 sec. The changes involved: - No longer dynamically generate patch files on startup for dart:* libraries (created from WebKits IDL e.g., html, svg, web_audio, web_gl, indexed_db, web_sql). Instead create a cache of patch files. - Comparison of @JS refelctedType not by library and symbol name comparison. - In addition, a VM mirror change see CL https://codereview.chromium.org/1834673003/ gives us the remaining speedup. This cache of interop patch files, for Dartium only, requires a manual re-gen after go.sh run is: > cd tools/dom/scripts > run go.sh The steps after (for Dartium) are: 1. build Dartium 2. cd tools/dartium 3. run generate_patches.sh 4. build Dartium R=jacobr@google.com, alanknight@google.com Committed: https://github.com/dart-lang/sdk/commit/10e70db01c98de3f426f07f000209d3f14328065

Patch Set 1 #

Patch Set 2 : Added failure case #

Patch Set 3 : cleanup #

Patch Set 4 : cleanup #

Total comments: 2

Patch Set 5 : Incorporated Jacob's suggestions #

Patch Set 6 : Requires latest change to WebKit #

Unified diffs Side-by-side diffs Delta from patch set Stats (+6275 lines, -16 lines) Patch
M .gitignore View 1 chunk +1 line, -0 lines 0 comments Download
A sdk/lib/js/dartium/cached_patches.dart View 1 chunk +6032 lines, -0 lines 0 comments Download
M sdk/lib/js/dartium/js_dartium.dart View 1 2 3 4 7 chunks +101 lines, -15 lines 0 comments Download
A tools/dartium/generate_app/generate_cached_patches.dart View 1 1 chunk +18 lines, -0 lines 0 comments Download
A tools/dartium/generate_app/generate_cached_patches.html View 1 1 chunk +56 lines, -0 lines 0 comments Download
A tools/dartium/generate_patches.sh View 1 chunk +39 lines, -0 lines 0 comments Download
M tools/deps/dartium.deps/DEPS View 1 2 3 4 5 1 chunk +1 line, -1 line 0 comments Download
M tools/dom/scripts/dartdomgenerator.py View 2 chunks +27 lines, -0 lines 0 comments Download

Messages

Total messages: 6 (2 generated)
terry
4 years, 9 months ago (2016-03-27 09:20:58 UTC) #2
Jacob
lgtm https://codereview.chromium.org/1833373002/diff/60001/sdk/lib/js/dartium/js_dartium.dart File sdk/lib/js/dartium/js_dartium.dart (right): https://codereview.chromium.org/1833373002/diff/60001/sdk/lib/js/dartium/js_dartium.dart#newcode286 sdk/lib/js/dartium/js_dartium.dart:286: String createCachedPatchesFile() { can you keep this method ...
4 years, 8 months ago (2016-03-28 14:23:58 UTC) #3
terry
Incorporated your changes. Will create another CL to change the dart: patch files generation to ...
4 years, 8 months ago (2016-03-28 14:45:32 UTC) #4
terry
4 years, 8 months ago (2016-03-28 15:20:21 UTC) #6
Message was sent while issue was closed.
Committed patchset #6 (id:100001) manually as
10e70db01c98de3f426f07f000209d3f14328065 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698