luke_wagner
Re:The Bytecode Alliance: Building a secure, composable future for Web...
on Tuesday November 12, 2019 @01:41PM (#21516764)
To the question of "how would dynamic linking work in the future", as already stated in the article, a nanoprocess doesn't need to correspond 1:1 to a wasm module/instance. Rather, N wasm instances can share a single wasm memory to collectively represent a single nanoprocess. From an external point of view, whether a nanoprocess is implemented as 1 or N instances wouldn't be visible -- it's an impl detail -- and the memory is (still) encapsulated by the nanoprocess. Thus, there is a two-level hierarchy of: a graph of shared-nothing-linked nanoprocesses each containing a graph of shared-everything wasm instances.
There's still a lot more details to figure out, of course, but that's true for wasm dynamic (shared-everything) linking in general.
Re:WebAssembly’s post-MVP future
on Monday October 22, 2018 @02:23PM (#18276986)
That's true for the "threading MVP", but there is also discussion about adding "pure wasm threads" as a follow-up which avoids worker overhead/limitations.
Re:Maybe you don't need Rust and WASM to speed up your JS
on Monday February 19, 2018 @02:31PM (#16415077)
That comment (which I made) explains why probably the best we can expect for wasm accessing normal JS objects is the same level of speed as a modern JS engine's "tier 1"/"baseline" JIT. But the Rust code discussed in the OP wasn't accessing JS objects, it was accessing Rust memory which lives in wasm's "linear memory", so I don't see how my comment really disagrees with what jandem or dikaiosune are saying.
Re:Firefox’s new streaming and tiering compiler
on Wednesday January 17, 2018 @01:39PM (#16170496)
To wit, as described in their blog post:
https://blogs.windows.com/msedgedev/2017/04/20/improved-
Edge validates and compiles wasm code lazily. Thus, this simplistic benchmark isn't really measuring compile time on Edge. In contrast, Firefox, Chrome and Safari are doing some amount of AOT compilation before WebAssembly.instantiate() resolves.
Re:WebAssembly: A New Hope
on Wednesday August 09, 2017 @03:14PM (#14972597)
Agreed, there was active discussion about this at the last WebAssembly CG meeting even: https://github.com/WebAssembly/meetings/blob/master/2017/CG-...
Re:Assembling WebAssembly
on Tuesday June 06, 2017 @06:34PM (#14502059)
Maybe some terminology difference here but what I meant by 'pure JIT' was that, iiuc, Chakra waits until the function is called to even validate it, then warms up in an interpreter and only if the function is hot compiles it in a background thread. I think that's one end of the eager/lazy spectrum that may well be what a category of wasm uses will want.
Re:Assembling WebAssembly
on Tuesday June 06, 2017 @05:52PM (#14501736)
I think the primarily-AOT compilation strategy we see today is a consequence of many of the initial workloads being frame-based animation where AOT avoids animation stutters. But this is likely to evolve over time as wasm workloads evolve. If and when we see wasm showing up in frameworks in contexts where page-load is the primary concern I can see a more lazy JIT strategy being the right thing and then we'd want to specify some sort of developer knob to control this. But given a pure-JIT approach like Chakra is using, wasm should be able to load code byte-for-byte faster than JS.
Re:JavaScript once had a JSX-like syntax called E4X
on Saturday March 18, 2017 @11:52PM (#13905070)