Hi Alon,

Module.calledRun is set true by doRun() simply if Module.setStatus does not 
exist... This is the code em++ appends before post.js:

  if (Module['setStatus']) {
    Module['setStatus']('Running...');
    setTimeout(function() {
      setTimeout(function() {
        Module['setStatus']('');
      }, 1);
      if (!ABORT) doRun();
    }, 1);
  } else {
    doRun();
  }

I compiled now with latest emscripten -O2 -g1, no asm.js error (ignore the 
ones coming from gnuplot.js), but the performance bug after a reset 
remains. :(
The new version is uploaded directly at
http://gaia.respawned.com

"Reset" simply calls gaia_create() again in the worker. Is there a way to 
open a worker console in the inspector of FF? This is a pretty handy 
feature in chrome...

Cheers,
C

On Wednesday, February 12, 2014 8:38:49 PM UTC+1, Alon Zakai wrote:
>
> Looking in src/postamble.js, calledRun is only set to true when actually 
> running this code:
>
>     ensureInitRuntime();
>
>     preMain();
>
>     if (Module['_main'] && shouldRunNow) {
>       Module['callMain'](args);
>     }
>
>     postRun();
>
> so if you do not throw in any of those (you would see an exception), or do 
> not define Module._main at a later time, this should work. (There is also 
> shouldRunNow, which unless you defined INVOKE_RUN or 
> Module['noInitialRun'], should not interfere here.) Hope that helps figure 
> out that issue.
>
> Yes, for performance -O2 -g1 is needed.
>
> - Alon
>
>
>
> On Wed, Feb 12, 2014 at 7:22 AM, Chris <[email protected] <javascript:>>wrote:
>
>> Fixed, but it wasn't actually the problem. For some reason 
>> Module.calledRun was true, so Module.run() did nothing. Setting it now 
>> manually false before the run. 
>> To the original problem: The -g1 version works now (index_alon.html), 
>> without asm.js errors but is ~100 times slower. I guess this is no use in 
>> determining why the speed loss occurred. Should I compile with -O2 and -g1 ?
>>
>> Thanks,
>> Christian
>>
>>
>>
>> On Tuesday, February 11, 2014 7:32:03 PM UTC+1, Alon Zakai wrote:
>>
>>> I believe FS.unlink is what does that.
>>>
>>> - Alon
>>>
>>>
>>>
>>> On Tue, Feb 11, 2014 at 12:55 AM, Christian H <[email protected]> wrote:
>>>
>>>> ...just noticed that chrome does complain about FS.deleteFile() not 
>>>> found? How do I remove a file now?
>>>>
>>>> Cheers,
>>>> C
>>>>
>>>>
>>>> On Tue, Feb 11, 2014 at 9:50 AM, Christian H <[email protected]> wrote:
>>>>
>>>>> Hi Alon,
>>>>> I did recompile with the latest emscripten, the one I compiled with 
>>>>> was not more than 2 months old. However, now I get nothing. I do see the 
>>>>> asm.js warnings, but no reaction to Module.run(), also no error (even 
>>>>> within worker triggering manually), the FS works, Module.print() works 
>>>>> too. 
>>>>> That happens to all versions I compiled with -O2 or -g1. I prepared a 
>>>>> site 
>>>>> loading the new (-g1) version:
>>>>>
>>>>> http://gaia.respawned.com/index_alon.html
>>>>>
>>>>> The bitcode is at
>>>>> http://gaia.respawned.com/GaiaE.o
>>>>>
>>>>> You don't need to wait that long, it will run until TS 1000. The 
>>>>> performance line appears after TS 0. 
>>>>>
>>>>> Thanks,
>>>>> Christian
>>>>>  
>>>>>
>>>>> On Mon, Feb 10, 2014 at 10:17 PM, Alon Zakai <[email protected]>wrote:
>>>>>
>>>>>>  Thanks. How long should this run? I waited until TS: 100 and it 
>>>>>> still keeps going it seems.
>>>>>>
>>>>>> I see an asm.js validation error in the log, this could be related to 
>>>>>> the performance problem. Was this compiled using latest emscripten? If 
>>>>>> so, 
>>>>>> can you make a whitespace-friendly build I could take a look at? emcc 
>>>>>> -g1 
>>>>>> will do that. (Even better is if you can provide the bitcode file, but 
>>>>>> not 
>>>>>> necessary.)
>>>>>>
>>>>>> - Alon
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Mon, Feb 10, 2014 at 11:13 AM, Chris <[email protected]> wrote:
>>>>>>
>>>>>>> Yes - you have to switch to the "Run"tab first. That is where the 
>>>>>>> CFD sim task is controlled, the gnuplot tasks may/should suffer from 
>>>>>>> the 
>>>>>>> same problem. 
>>>>>>> The GFlops output comes after the first time step.
>>>>>>>
>>>>>>> Cheers,
>>>>>>> C
>>>>>>>
>>>>>>>
>>>>>>> On Monday, February 10, 2014 7:21:07 PM UTC+1, Alon Zakai wrote:
>>>>>>>
>>>>>>>> Does it print out the GFlops somewhere?
>>>>>>>>
>>>>>>>> All I see is "Execution took", which went from 1.628 to 2.172 when 
>>>>>>>> I reset.
>>>>>>>>
>>>>>>>> - Alon
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On Mon, Feb 10, 2014 at 3:04 AM, Chris <[email protected]> wrote:
>>>>>>>>
>>>>>>>>> Hi all, 
>>>>>>>>> I ported a fluid simulation C++ code (command line program) with 
>>>>>>>>> emscripten and it works quite fantastic. I never thought JS could run 
>>>>>>>>> that 
>>>>>>>>> efficiently.
>>>>>>>>> However, to re-run my program I wrapped the compiled version in a 
>>>>>>>>> function (with pre/post.js) to reset its state. That usually worked 
>>>>>>>>> nice, 
>>>>>>>>> but recently I get at first an awesome performance from FF (~0.3 
>>>>>>>>> native 
>>>>>>>>> speed!), but after a reset it suffers a drastic performance breakdown 
>>>>>>>>> of a 
>>>>>>>>> factor of 20. 
>>>>>>>>>
>>>>>>>>> The site is http://gaia.respawned.com
>>>>>>>>>
>>>>>>>>> You can observe it just by clicking "Run" in the Run tab, the 
>>>>>>>>> sparse matrix mul+add performance is measured thoroughly. At first 
>>>>>>>>> run:
>>>>>>>>> Performance (mul+add): 0.377445 GFlops
>>>>>>>>>
>>>>>>>>> After "Reset" (calling gaia_create() again in the worker):
>>>>>>>>> Performance (mul+add): 0.0187213 GFlops
>>>>>>>>>
>>>>>>>>> On a recent Chrome I do not get a difference, always around 0.26 
>>>>>>>>> GFlops.
>>>>>>>>>
>>>>>>>>> Thanks for your help,
>>>>>>>>> Christian
>>>>>>>>>
>>>>>>>>> PS: Native gcc -O3 : 1.17 GFlops.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>  -- 
>>>>>>>>> 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/groups/opt_out.
>>>>>>>>>
>>>>>>>>
>>>>>>>>  -- 
>>>>>>> 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/groups/opt_out.
>>>>>>>
>>>>>>
>>>>>>  -- 
>>>>>> 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/UFL7YRfvJQw/unsubscribe.
>>>>>> To unsubscribe from this group and all its topics, send an email to 
>>>>>> [email protected].
>>>>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>>>>
>>>>>
>>>>>
>>>>  -- 
>>>> 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/groups/opt_out.
>>>>
>>>
>>>  -- 
>> 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] <javascript:>.
>> For more options, visit https://groups.google.com/groups/opt_out.
>>
>
>

-- 
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/groups/opt_out.

Reply via email to