Folks,

I would like to share some (not necessarily representative) experiences 
with the experimental "asyncify" feature. First of all: I really do like 
the ingenious idea behind the current implementation. Introducing a 
sync-async bridge is dearly needed for many inherently asynchronous 
features such as file i/o. Nonetheless, after experimenting with asyncify 
for a while, my enthusiasm has somewhat cooled down, reasons for that being 
two major issues:

For one, compile time for the (admittedly very large and complex) legacy 
code base I used has multiplied and requires a lot more memory than it used 
to. I actually had to provision some hefty 12 GB to the Ubuntu VM that I 
run emscription in, in order to let it complete successfully. And secondly, 
the resulting code size is absurdly large (despite using -Oz), making 
asyncify impractical for me. In fact, I resorted to using the "main loop" 
functionality, despite the needed code refactorings. 

I saw that using Javascript generators was contemplated, but considered too 
slow. Has the recent Mozilla announcement changed anything in this 
assessment? AFAICS, Microsoft is also working on generators support in IE 
and I would expect Google (and eventually, also Apple) to follow course. 
Obviously, the "yield" functionality of generators would not suffer from 
the code bloat and compile time increase of the current asyncify approach 
of forcefully unwinding the call stack and reconstructing it upon resume. 
Any thoughts?

Soeren


-- 
You received this message because you are subscribed to the Google Groups 
"emscripten-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to