I've improved the accuracy of the canvas (resize/copy/rotate) perf test: <a href="http://webkit.org/demos/canvas-perf/canvas.html">http://webkit.org/demos/canvas-perf/canvas.html</a><div><br>Here are some results in a similar format to what Mike posted (<a href="http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2010-March/025590.html">http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2010-March/025590.html</a>):<br>
<br>Firefox 3.7a4 (no D2D)<br><br>Direct image copy: 39ms<br>Indirect copy with (via ImageData): 160ms<br>Copy with 2x scale: 646.5ms<br>Copy with 0.5x scale: 42.5ms<br>Copy with rotate: 358ms<br><br>Firefox 3.7a4 (D2D)<br>
<br>Direct image copy: 115ms<br>Indirect copy with (via ImageData): 365.5ms<br>Copy with 2x scale: 246ms<br>Copy with 0.5x scale: 48.5ms<br>Copy with rotate: 100.5ms<br><br>Chrome 4.1.249.1064 (45376)<br><br>Direct image copy: 32.5ms<br>
Indirect copy with (via ImageData): 207.5ms<br>Copy with 2x scale: 378.5ms<br>Copy with 0.5x scale: 27.5ms<br>Copy with rotate: 367ms<br><br>While the GPU does help in some scenarios, unfortunately it must still take some time to do its work, so it doesn't enable us to do sync apis that don't hang the UI. <div>
<br></div><div>Feel free to run the test yourself and look at the code.<br><br>Best wishes,<br>Dave<br></div></div>