Even your 30%-improved code would be good to see, so we can make sure it's not aborting on something that should be handled, but isn't. If you have a debug build, setenv TRACEMONKEY verbose and grep -i abort on the stdout.
/be
23.08.2008 04:16
<< Weekly Status Report, W33/2008 | The roads I take... | Integration eines Magento-2-Webshops mit FreeFinance und selbstgebautem Warenmanagement >>
javascript.options.jit.chrome
pref to run it with TraceMonkey, I saw no difference though, still the same, quite slow run time.Z = Z.square().add(aC);
looks good for the Z = Z² + C
equation, it's not that efficient to do two JS object creations for every iteration, so earlier in the week, I replaced that nice code with pure math and simple variables only. That helped performance a lot and saved about 90% of the time, cutting it down to about 9.4 +/- a half seconds.Beitrag geschrieben von KaiRo und gepostet am 23. August 2008 03:45 | Tags: JavaScript, Mandelbrot, Mozilla | 4 Kommentare
TrackBack/Pingback
Kommentare
Autor | Beitrag |
---|---|
If you have something that doesn't speed up, file a bug. Tracing promises to eliminate unnecessary object wrappers for complex number pairs, some day. Even your 30%-improved code would be good to see, so we can make sure it's not aborting on something that should be handled, but isn't. If you have a debug build, setenv TRACEMONKEY verbose and grep -i abort on the stdout. /be 23.08.2008 04:16 | |
Boris | What Brendan said. My own mandelbrot thingie so far has picked up a factor-of-3 win from tracemonkey, but I had to fix some things along the way to keep it from falling off the trace (things fixed in Gecko, not in the mandelbrot script). So if there's a case when there is no speedup, that just means that there's something you're doing the jit doesn't handle yet, and you're getting the pure-interpreted version, as usual. It would be good to know what this something is so the jit can be fixed. 23.08.2008 05:11 |
Webmaster | I haven't filed a bug yet, as I'm not completely sure on what to file it - but the code that gets the 30% improvement is here: mandelbrot.js:122 now that my source is open. The code that doesn't see optimization is in the function right above that, but of course using the complex() object definition I have in the same file. Zuletzt bearbeitet von KaiRo am 23.08.2008 20:00 23.08.2008 19:58 |
Birotom | I have made some test on our open source CMS systems GUI. Unfortunately swithing on tracemonkey does not make the app 30% faster, but it can be felt. We need to do more measurements. But Firefox 3.1 is so far much better that IE8, both is speed and compatibility. http://blog.sensenet.hu/post/2008/08/Comparing-the-Internet-Exploere-8-and-Firefox-(Minefield)-31.aspx 29.08.2008 18:13 |