The output of EMTERPRETER_ADVISE is "67% out of 2554 functions", which agrees with our previous conclusion with Asyncify.
regards, - Lu On Thu, Mar 5, 2015 at 1:50 PM, Lu Wang <[email protected]> wrote: > I remembered that we have pessimistic analysis for function pointers, and > we left that on for safety. > I'll do a static analysis later. I wonder if it can be integrated, i.e. I > trust emscripten such that it will decide which functions to be interpreted > and which are not, instead of copying the arguments and paste to emscripten > every time. > > > regards, > - Lu > > > On Thu, Mar 5, 2015 at 11:51 AM, Alon Zakai <[email protected]> wrote: > >> Wow, that is faster than I would expect (both startup and later)! Yes, >> without a blacklist or whitelist, it is 100% in the interpreter. >> >> With blacklist it could probably be even faster. Actually, I'd be curious >> how the emterpreter static analysis does, if you feel like trying it, >> >> https://github.com/kripken/emscripten/wiki/Emterpreter#static-analysis >> >> I wonder if the size of the list will be most of the program, which I >> think was the case with asyncify? The difference might that the emterpreter >> analysis uses function pointer types, which I think asyncify didn't (but >> could add)? >> >> - Alon >> >> >> On Tue, Mar 3, 2015 at 8:32 PM, Lu Wang <[email protected]> wrote: >> >>> Hi all, >>> >>> Recently I tried EMTERPRETER on Vim.js, and I got this: >>> http://coolwanglu.github.io/vim.js/emterpreter/vim.html >>> >>> I was compiling using -s EMTERPRETIFY=1 -s EMTERPRETIFY_ASYNC=1, >>> without any WHITELIST or BLACKLIST, which means all the functions are >>> interpreted? The file size is reduced significantly, comparing with the 26M >>> monster-sized ASM.js version, this version with EMTERPRETER is only 2.5M, >>> which improves the startup time a lot. >>> >>> While I was planning to optimize after making it work, I found the >>> performance is good enough, I don't feel any delay for normal navigation or >>> editing operations, but it does become slightly slower for commands like >>> `%s/^/hello/g`, which inserts 'hello' at the beginning of each line. >>> >>> This interpreter is surprisingly faster than I had expected, probably >>> there were already lots of async operations in Vim maybe? Anyway I'm quite >>> happy with this new technique! >>> >>> Thanks! >>> >>> >>> regards, >>> - Lu >>> >>> >>> -- >>> 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. >>> >> >> -- >> You received this message because you are subscribed to a topic in the >> Google Groups "emscripten-discuss" group. >> To unsubscribe from this topic, visit >> https://groups.google.com/d/topic/emscripten-discuss/yfvDabeq8TM/unsubscribe >> . >> To unsubscribe from this group and all its topics, send an email to >> [email protected]. >> For more options, visit https://groups.google.com/d/optout. >> > > -- 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.
