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

Issue 2255673003: [wasm] Support wasm module structured cloning. (Closed)

Created:
4 years, 4 months ago by Mircea Trofin
Modified:
4 years, 3 months ago
CC:
blink-reviews, blink-reviews-bindings_chromium.org, chromium-reviews
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

[wasm] Support wasm module structured cloning. Wasm modules may be large (megs) and their compilation is time- and resources consuming (many seconds on desktops, more on mobile). With structured cloning support, developers may save/restore compilation results in IndexedDB, or decide to compile on worker threads. This first CL introduces basic support and a basic test. Intent to implement: https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/Dogpn1hpnhw BUG=v8:5072 Committed: https://crrev.com/e95d2b174be13defde83603e4651e703ebe91dd2 Cr-Commit-Position: refs/heads/master@{#416269}

Patch Set 1 : formatting #

Patch Set 2 : DEPS #

Patch Set 3 : android/windows #

Total comments: 32

Patch Set 4 : feedback #

Patch Set 5 : isolate #

Patch Set 6 : moved wasm file #

Patch Set 7 : moved wasm file #

Patch Set 8 : Setup isolate #

Total comments: 1

Patch Set 9 : drop redundant DEPS change #

Patch Set 10 : [wasm] serialization switch #

Patch Set 11 : LayoutTests and virtual path #

Total comments: 2

Patch Set 12 : LayoutTests and virtual path #

Unified diffs Side-by-side diffs Delta from patch set Stats (+138 lines, -17 lines) Patch
M content/child/runtime_features.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/NeverFixTests View 1 2 3 4 5 6 7 8 9 10 1 chunk +3 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/VirtualTestSuites View 1 2 3 4 5 6 7 8 9 10 1 chunk +5 lines, -0 lines 0 comments Download
A + third_party/WebKit/LayoutTests/http/tests/wasm/incrementer.wasm View 1 2 3 4 5 6 7 8 9 10 Binary file 0 comments Download
A + third_party/WebKit/LayoutTests/http/tests/wasm/wasm_serialization_tests.html View 1 2 3 4 5 6 7 8 9 10 1 chunk +2 lines, -3 lines 0 comments Download
A third_party/WebKit/LayoutTests/http/tests/wasm/wasm_serialization_tests.js View 1 2 3 4 5 6 7 8 9 10 1 chunk +29 lines, -0 lines 0 comments Download
A third_party/WebKit/LayoutTests/http/tests/wasm/wasm_serialization_worker.js View 1 2 3 4 5 6 7 8 9 10 1 chunk +21 lines, -0 lines 0 comments Download
A third_party/WebKit/LayoutTests/virtual/enable_wasm/README.txt View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -0 lines 0 comments Download
A third_party/WebKit/LayoutTests/virtual/enable_wasm/http/tests/wasm/README.txt View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/ScriptValueSerializer.h View 1 2 3 4 5 6 7 8 9 10 2 chunks +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/ScriptValueSerializer.cpp View 1 2 3 4 5 6 7 8 9 10 4 chunks +46 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/SerializationTag.h View 3 chunks +15 lines, -14 lines 0 comments Download
M third_party/WebKit/Source/platform/RuntimeEnabledFeatures.in View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/web/WebRuntimeFeatures.cpp View 1 2 3 4 5 6 7 8 9 10 1 chunk +5 lines, -0 lines 0 comments Download
M third_party/WebKit/public/web/WebRuntimeFeatures.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 86 (52 generated)
Mircea Trofin
PTAL Thanks!
4 years, 4 months ago (2016-08-18 04:51:32 UTC) #10
jsbell
+jbroman who is reworking the serialization mechanism (that work shouldn't impact this CL, but...)
4 years, 4 months ago (2016-08-18 16:21:48 UTC) #14
jsbell
Quick first look (I'm on an airplane). Mostly nits but some big questions. I didn't ...
4 years, 4 months ago (2016-08-18 16:48:02 UTC) #15
jbroman
https://codereview.chromium.org/2255673003/diff/60001/third_party/WebKit/Source/bindings/core/v8/ScriptValueSerializer.cpp File third_party/WebKit/Source/bindings/core/v8/ScriptValueSerializer.cpp (right): https://codereview.chromium.org/2255673003/diff/60001/third_party/WebKit/Source/bindings/core/v8/ScriptValueSerializer.cpp#newcode1862 third_party/WebKit/Source/bindings/core/v8/ScriptValueSerializer.cpp:1862: v8::WasmCompiledModule::Deserialize(isolate(), data); If I read this correctly, every time ...
4 years, 4 months ago (2016-08-18 16:59:09 UTC) #16
Mircea Trofin
Thanks for the feedback so far, inline some answers. I'll wait for more feedback before ...
4 years, 4 months ago (2016-08-18 17:34:08 UTC) #17
jbroman
FYI, as jsbell mentioned, I'm in the process of moving the core of ScriptValueSerializer into ...
4 years, 4 months ago (2016-08-18 17:55:50 UTC) #18
jsbell
https://codereview.chromium.org/2255673003/diff/60001/chrome/test/data/wasm/wasm_tests.js File chrome/test/data/wasm/wasm_tests.js (right): https://codereview.chromium.org/2255673003/diff/60001/chrome/test/data/wasm/wasm_tests.js#newcode14 chrome/test/data/wasm/wasm_tests.js:14: var xhrReadyState_DONE = 4; On 2016/08/18 17:34:08, Mircea Trofin ...
4 years, 4 months ago (2016-08-18 18:13:14 UTC) #19
Mircea Trofin
On 2016/08/18 17:55:50, jbroman wrote: > FYI, as jsbell mentioned, I'm in the process of ...
4 years, 4 months ago (2016-08-18 18:14:01 UTC) #20
jbroman
On 2016/08/18 at 18:14:01, mtrofin wrote: > On 2016/08/18 17:55:50, jbroman wrote: > > FYI, ...
4 years, 4 months ago (2016-08-18 18:18:23 UTC) #21
Mircea Trofin
https://codereview.chromium.org/2255673003/diff/60001/chrome/test/data/wasm/wasm_serialization_worker.js File chrome/test/data/wasm/wasm_serialization_worker.js (right): https://codereview.chromium.org/2255673003/diff/60001/chrome/test/data/wasm/wasm_serialization_worker.js#newcode8 chrome/test/data/wasm/wasm_serialization_worker.js:8: if (typeof instance === "undefined") { On 2016/08/18 17:34:08, ...
4 years, 4 months ago (2016-08-18 23:02:59 UTC) #24
Mircea Trofin
PTAL - does the isolate setup make sense, for copying over the wasm dependency? Is ...
4 years, 4 months ago (2016-08-20 21:54:59 UTC) #48
Mircea Trofin
On 2016/08/20 21:54:59, Mircea Trofin wrote: > PTAL - does the isolate setup make sense, ...
4 years, 3 months ago (2016-08-23 15:08:21 UTC) #49
jbroman
(moving self to cc, as I think it's the other reviewers you're waiting for?) https://codereview.chromium.org/2255673003/diff/180001/DEPS ...
4 years, 3 months ago (2016-08-23 15:23:07 UTC) #51
Mircea Trofin
On 2016/08/23 15:23:07, jbroman wrote: > (moving self to cc, as I think it's the ...
4 years, 3 months ago (2016-08-23 15:48:58 UTC) #52
Mircea Trofin
Jochen, could you please take a look at this? Thanks!
4 years, 3 months ago (2016-08-23 15:49:56 UTC) #54
jbroman
On 2016/08/23 at 15:48:58, mtrofin wrote: > On 2016/08/23 15:23:07, jbroman wrote: > > (moving ...
4 years, 3 months ago (2016-08-23 17:15:10 UTC) #55
blink-reviews
Oh, awesome. Thanks! On Tue, Aug 23, 2016 at 10:15 AM <jbroman@chromium.org> wrote: > On ...
4 years, 3 months ago (2016-08-23 17:19:24 UTC) #56
chromium-reviews
Oh, awesome. Thanks! On Tue, Aug 23, 2016 at 10:15 AM <jbroman@chromium.org> wrote: > On ...
4 years, 3 months ago (2016-08-23 17:19:35 UTC) #57
jochen (gone - plz use gerrit)
why didn't you write the test as layout test? this allows for sharing binary code ...
4 years, 3 months ago (2016-08-24 14:25:39 UTC) #62
Mircea Trofin
Justin, could you please take a look at this CL - see Jochen's comment. Would ...
4 years, 3 months ago (2016-08-24 14:56:42 UTC) #64
jochen (gone - plz use gerrit)
can you add an explicit runtime enabled feature flag to control this feature?
4 years, 3 months ago (2016-08-26 15:14:02 UTC) #65
Mircea Trofin
On 2016/08/26 15:14:02, jochen wrote: > can you add an explicit runtime enabled feature flag ...
4 years, 3 months ago (2016-08-29 23:59:02 UTC) #66
jochen (gone - plz use gerrit)
if it's a browser test, it should be a content_browsertest
4 years, 3 months ago (2016-08-30 12:14:28 UTC) #67
Mircea Trofin
PTAL Based on offline feedback, moved the wasm file under LayoutTests, and testing is now ...
4 years, 3 months ago (2016-09-01 01:06:15 UTC) #72
jochen (gone - plz use gerrit)
code looks good. Now all that's missing is the intent to implement email.. https://codereview.chromium.org/2255673003/diff/240001/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.in File ...
4 years, 3 months ago (2016-09-01 12:13:59 UTC) #73
azizyahyaxx
On 2016/09/01 12:13:59, jochen wrote: > code looks good. Now all that's missing is the ...
4 years, 3 months ago (2016-09-01 18:01:30 UTC) #74
Mircea Trofin
PTAL. Thanks!
4 years, 3 months ago (2016-09-01 18:15:19 UTC) #75
Mircea Trofin
https://codereview.chromium.org/2255673003/diff/240001/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.in File third_party/WebKit/Source/platform/RuntimeEnabledFeatures.in (right): https://codereview.chromium.org/2255673003/diff/240001/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.in#newcode229 third_party/WebKit/Source/platform/RuntimeEnabledFeatures.in:229: WebAssemblySerialization status=experimental On 2016/09/01 12:13:59, jochen wrote: > let's ...
4 years, 3 months ago (2016-09-02 07:14:59 UTC) #76
jochen (gone - plz use gerrit)
code looks good. Once you've send the intent to implement, please link to it from ...
4 years, 3 months ago (2016-09-02 12:33:29 UTC) #77
Mircea Trofin
4 years, 3 months ago (2016-09-02 14:00:48 UTC) #79
jochen (gone - plz use gerrit)
lgtm
4 years, 3 months ago (2016-09-02 14:01:25 UTC) #80
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2255673003/260001
4 years, 3 months ago (2016-09-02 14:02:12 UTC) #82
commit-bot: I haz the power
Committed patchset #12 (id:260001)
4 years, 3 months ago (2016-09-02 15:33:02 UTC) #84
commit-bot: I haz the power
4 years, 3 months ago (2016-09-02 15:36:20 UTC) #86
Message was sent while issue was closed.
Patchset 12 (id:??) landed as
https://crrev.com/e95d2b174be13defde83603e4651e703ebe91dd2
Cr-Commit-Position: refs/heads/master@{#416269}

Powered by Google App Engine
This is Rietveld 408576698