Hmm, I'm not sure those are right. You double check as follows:

When you've entered the emscripten environment (with the emsdk.bat, so emcc
is now runnable from the command line), try printing out the EM_CONFIG
variable - it should be a path to a file. Inside this file should be
a EMSCRIPTEN_NATIVE_OPTIMIZER variable, which tells emscripten where the
optimizer is.

If you get through all this have replaced that file and it still crashes
(or it's the same file), if you run with EMCC_DEBUG=1 and paste it into a
github issue on ayzim then I'm eager to take a look. Or, if it's possible
to share any part of the project (either so I can build from source, or
just the final objects before the link -> .js step), then that's great too.

On 2 December 2016 at 03:43, awt <knightac...@gmail.com> wrote:

> Hi,
>
> This looks very promising and I am interested to try it out. I am
> currently on emsdk 1.36.3 so where should I place ayzim-opt.exe? The only
> optimizers that I see in my build are in emsdk\clang\e1.36.3_64bit where I
> have opt.exe and optimizer.exe.
>
> I tried to replace optimizer.exe with ayzim-opt.exe and it crashes after a
> while.
>
> On Saturday, November 5, 2016 at 11:09:02 AM UTC+8, Aidan Hobson Sayers
> wrote:
>>
>> Using Ayzim as a drop-in replacement for the Emscripten asm.js native
>> optimizer when compiling an asm.js project of moderate or large size on
>> `-O2` or `-O3` should result in a ~50-75% reduction in memory usage and a
>> ~25-50% speedup when running asm.js native optimizer passes (i.e. most of
>> the "js opts" stage as seen in in EMCC_DEBUG output).
>>
>> To get it, download the compiled releases for Linux and Windows from the
>> ayzim releases page <https://github.com/aidanhs/ayzim/releases>, extract
>> them and replace (after backing up!) the existing optimizer(.exe) binary in
>> `emsdk/emscripten/incoming_optimizer_64bit/` (if you're not on
>> `incoming` but still feel brave, take a look at your emscripten config
>> file, usually at `$HOME/.emscripten`, which should point you to the right
>> place).
>>
>> --
>>
>> Some background: when I was trying to port a large application to asm.js
>> about 6 months ago I had serious problems with the Emscripten asm.js
>> optimizer - it would split the 750MB .js file into chunks and promptly
>> consume all 8GB of my RAM by trying to optimize the chunks in parallel,
>> swapping everything else out of memory and grinding the machine to a halt.
>> I tackled this problem by taking a brief(!) diversion to rewrite the
>> optimizer in Rust to be more memory efficient. Along the way I added a few
>> speedups.
>>
>> Ayzim is probably an entry in the "well this might have been useful two
>> years ago" section of software (since asm.js is 'shortly' going to be made
>> redundant by wasm) but someone may find a use for it. For example, people
>> wanting to understand the structure of the Emscripten optimizer ast may
>> want to look at this code
>> <https://github.com/aidanhs/ayzim/blob/0.1.2/src/cashew.rs#L141> and/or
>> ask me since I'm very familiar with it now :)
>>
>> In time I may extend Ayzim to support wasm optimizations and move it to
>> being more of a library, but that's for the future.
>>
>> Aidan
>>
> --
> 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 emscripten-discuss+unsubscr...@googlegroups.com.
> 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 emscripten-discuss+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to