Did "emsdk install sdk-incoming-64bit" followed by "emsdk activate
sdk-incoming-64bit" finish properly without errors? This looks like it is
attempting to run node.js but fails.

Also, is the benchmark code something small that'd be easily shared? It
might be nice to capture that benchmark somewhere as a test case to make
sure things don't regress.

2017-01-04 23:35 GMT+02:00 Alon Zakai <[email protected]>:

> Very strange. Perhaps emcc --clear-cache fixes things for the next time
> it's run? Or maybe the install is bad somehow, the dlmalloc.c file it's
> missing may have gotten corrupted on the disk?
>
> On Tue, Jan 3, 2017 at 5:50 PM, Boris Sergeev <[email protected]> wrote:
>
>> Hi Alon,
>>
>> Thank you for your suggestions, but I can't build asm.js with *incoming*
>> (on Windows), only with *latest*.
>> Not sure what the problem is, since building wasm works fine.
>>
>> When I compile my sample without `-s WASM=1`, simply as:
>> emcc t.cpp -std=c++14 -O3 -o index.html
>> I get the following error (after successfully building libcxx_noexcept.a,
>> libcxxabi.bc, libc.bc, and dlmalloc.bc):
>> INFO:root:generating system library: dlmalloc.bc... (this will be cached
>> in "C:\Users\boris\.emscripten_cache\asmjs\dlmalloc.bc" for subsequent
>> builds)
>> INFO:root: - ok
>> Traceback (most recent call last):
>>   File "C:\Util\Emscripten\emscripten\incoming\\emcc", line 13, in
>> <module>
>>     emcc.run()
>>   File "C:\Util\Emscripten\emscripten\incoming\emcc.py", line 1958, in
>> run
>>     JSOptimizer.flush()
>>   File "C:\Util\Emscripten\emscripten\incoming\emcc.py", line 1854, in
>> flush
>>     run_passes(chunks[0], title, just_split=False, just_concat=False)
>>   File "C:\Util\Emscripten\emscripten\incoming\emcc.py", line 1827, in
>> run_passes
>>     final = shared.Building.js_optimizer(final, passes, debug_level >=
>> 4, JSOptimizer.extra_info, just_split=just_split, just_concat=just_concat)
>>   File "C:\Util\Emscripten\emscripten\incoming\tools\shared.py", line
>> 1828, in js_optimizer
>>     ret = js_optimizer.run(filename, passes, NODE_JS, debug, extra_info,
>> just_split, just_concat)
>>   File "C:\Util\Emscripten\emscripten\incoming\tools\js_optimizer.py",
>> line 559, in run
>>     return temp_files.run_and_clean(lambda: run_on_js(filename, passes,
>> js_engine, source_map, extra_info, just_split, just_concat))
>>   File "C:\Util\Emscripten\emscripten\incoming\tools\tempfiles.py", line
>> 78, in run_and_clean
>>     return func()
>>   File "C:\Util\Emscripten\emscripten\incoming\tools\js_optimizer.py",
>> line 559, in <lambda>
>>     return temp_files.run_and_clean(lambda: run_on_js(filename, passes,
>> js_engine, source_map, extra_info, just_split, just_concat))
>>   File "C:\Util\Emscripten\emscripten\incoming\tools\js_optimizer.py",
>> line 451, in run_on_js
>>     filenames = pool.map(run_on_chunk, commands, chunksize=1)
>>   File "C:\Util\Emscripten\python\2.7.5.3_64bit\lib\multiprocessing\pool.py",
>> line 250, in map
>>     return self.map_async(func, iterable, chunksize).get()
>>   File "C:\Util\Emscripten\python\2.7.5.3_64bit\lib\multiprocessing\pool.py",
>> line 554, in get
>>     raise self._value
>> WindowsError: [Error 2] The system cannot find the file specified
>>
>> Thank you for your help,
>> Boris
>>
>> On Monday, January 2, 2017 at 6:20:39 PM UTC-7, Alon Zakai wrote:
>>>
>>> First thing I would check is that asm.js on incoming is the same as
>>> asm.js from before, just to remove one possible difference.
>>>
>>> If that's not it, then try to build to wasm in imprecise mode, -s
>>> BINARYEN_IMPRECISE=1. Some details and discussion here:
>>> https://github.com/kripken/emscripten/issues/4625
>>>
>>> If that's not it, then it might be a libc difference. We build libc
>>> differently for wasm for various reasons. Looking at profiles from asm.js
>>> and wasm should show a noticeable difference if that's the case.
>>>
>>> On Mon, Jan 2, 2017 at 4:18 PM, Boris Sergeev <[email protected]> wrote:
>>>
>>>> Happy New Year everybody!
>>>>
>>>> I've encountered some weirdness in *WebAssembly* vs. *asm.js*
>>>> performance comparison and I'm wondering if I'm doing something wrong...
>>>>
>>>> 1. I've compiled some simple computationally intensive code
>>>> (calculation of Pi to 10,000 digits with Rabinowitz & Wagon spigot
>>>> algorithm) as x64 with VS2015 Microsoft's compiler and Clang in Windows,
>>>> then with Clang 4.0 & libcpp in Ubuntu 14.04 (Windows 10 Ubuntu subsystem)
>>>> and got very close results: about 6.7 seconds.
>>>>
>>>> 2. Then I compiled this code to *asm.js* with Emscripten latest and
>>>> -O3 flag and ran it in the latest released Chrome (8.7 sec) and Nightly (7
>>>> sec). Impressively close to the native speed!
>>>>
>>>> 3. Finally, I installed Emscripten incoming, which uses Clang 3.9, and
>>>> compiled my code:
>>>> emcc t.cpp -std=c++14 -O3 -s WASM=1 -o index.html
>>>> Running the resulting *WebAssembly* code in Nightly produced the
>>>> following console output:
>>>> trying binaryen method: native-wasml
>>>> binaryen method succeeded.
>>>> and took almost 15 seconds.
>>>> In Canary, it took almost 17 seconds.
>>>>
>>>> The time was measured only for the Pi calculation:
>>>>
>>>> int main(int argc, char** argv)
>>>> {
>>>>     Stopwatch<> sw;
>>>>     Pi::calculate(10000);
>>>>     sw.stop();
>>>>     std::cout << sw.elapsed()/1.0e+6 << " seconds\n";
>>>> }
>>>>
>>>> So, any asm.js or wasm translation time shouldn't affect the numbers...
>>>>
>>>> What is wrong here???
>>>>
>>>> Thank you,
>>>> Boris
>>>>
>>>>
>>> --
>> 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 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 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