6 comments

[ 4.9 ms ] story [ 24.7 ms ] thread
Flash is significantly faster than Canvas in all the examples. It's impressive how much better Canvas performs when one rounds to whole numbers.
On the contrary:

Flash fails in all examples.

Canvas is full 30fps in all examples, CPU consumption is too low to reliably measure in all but three of the examples.

jinushaun and I are both telling the truth.

Like they say on the page: results are meaningless without the hardware and software attached.

(Current MacBook Air, Mac OS X 10.7.2, Safari 5.1.1, No flash player installed.)

I was surprised to see Safari faster than Chrome in most cases. I was expecting the reverse. (same setup you have)
I'm running Chrome on a 15" MBP with OS 10.7 and the Canvas examples were all around 3-8 fps without rounding.
IE9 manages to keep up with Flash pretty well on many of the Canvas examples on my system, whereas Chrome has much more across-the-board problems compared to Flash.

I think the win that Flash still has over Canvas when it comes to gaming and other blit-heavy applications isn't even so much the fact that it is "faster" (usually), but that the peformance is more predictable.

It isn't that difficult to come up with a canvas demo that runs great on one browser and unusably slow on another. Flash performance certainly depends upon the CPU class, just like anything else -- it'll perform differently on a modern desktop vs modern laptop vs smartphone, but with canvas you have that worry as well and then you have to multiply it by how much variance there is in performance across all the browsers.

Of course, the flip side of that is that sometimes there just isn't Flash at all on a particular platform, so it will be nice when canvas is mature enough that it is just taken for granted that the performance is pretty good for whatever platform it is currently running on, but we certainly aren't there yet.

In Chrome the fps reported good numbers but many of the examples were jittery. In IE9 all the demos ran smoother than Flash though except for the blitting one.