12 May 2011 10:09 AM #1
[OPEN] [EXTJSIV-1952] Performance Comparison between Ext 3.2.1 and Ext 4.0
Performance Issues with ExtJS 4.0
I have put together my findings for three different examples and found that performance has increased in some areas and decreased in other areas. I have tested using four different browsers: Internet Explorer 8, Internet Explorer 9, Firefox 3.6, and Google Chrome 10.06. I have also tested against three different versions of ExtJs, 3.2.1, 4.0 Preview 5, and 4.0 GPL.
I would like to know why the first example (the easiest) performs so slowly in ExtJs 4.0.
Example 1 – Form Example
In a SenchaCon video entitled ‘ExtJS 4.0 Layout System’, one of the developers mentioned there were massive performance improvements. The example he used was a simple form with 500 text fields on it. We recreated this example in-house and did NOT notice a performance improvement. In fact, we noticed a performance decrease.
This example contains a window with a form inside, and inside the form there are 500 text fields. When the page loads, the window will show.
IE8: 5.72 secs
IE9: 0.878 secs
FF3.6: 9.295 secs
Chrome 10.06: 1.281 secs
IE8: 18.023 secs
IE9: 5.032 secs
FF3.6: 37.525 secs
Chrome 10.06: 13.522 secs
IE8: 13.17 secs
IE9: 1.738 secs
FF3.6: 7.575 secs
Chrome 10.06: 0.070 secs
Example 2 – Complex Layout Example
In this use-case we attempted to model one of our more complex layouts using the ExtJS 4.0 framework. This form contains a tab panel, various sub-panels, layouts, fields, grids, and buttons.
IE8: 2.27 secs
IE9: 0.601 secs
FF3.6: 4.684 secs
Chrome 10.06: 0.817 secs
IE8: 7.043 secs
IE9: 1.444 secs
FF3.6: 4.396 secs
Chrome 10.06: 1.532 secs
IE8: 2.572 secs
IE9: 1.522 secs
FF3.6: 4.669 secs
Chrome 10.06: 1.262 secs
Example 3 – Grid example
For this example, we took a grid from the ExtJS 4.0 examples page and a grid from the ExtJS 3.0 examples page and did a comparison.
IE8: 1.026 secs
IE9: 0.237 secs
FF3.6: 1.894 secs
Chrome 10.06: 0.660 secs
IE8: 7.598 secs
IE9: 0.840 secs
FF3.6: 3.866 secs
Chrome 10.06: 1.038 secs
IE8: 0.458 secs
IE9: 0.123 secs
FF3.6: 0.249 secs
Chrome 10.06: 0.112 secs
Last edited by Mark879; 12 May 2011 at 10:17 AM. Reason: formatting issues
13 May 2011 11:05 AM #2
IMHO this issue is of paramount importance. The number 1 stated benefit of 4.0 is increased performance. Sencha has noted that 3.x increased flexibility, but decreased performance from 2.x. If 4.0 is not faster than 3.x in real world scenarios, then something is very wrong. This issue should take precedence over all the ongoing effort to fix individual problems as it won't matter if 4.0 remains slower than 3.x.
Last edited by rich02818; 13 May 2011 at 11:05 AM. Reason: corrected 3.3 to 3.x
13 May 2011 2:57 PM #3
Mark & Rich -
Performance of Ext is of 'paramount importance' as you noted. We are actively working on improving the performance wherever possible. Thanks to the community who has pointed out certain cases where the performance is lower than prior versions.
When we are doing our profiling each test/use case may have different implications and performance metrics associated with it. For example in your test case #3 regarding the grid. The grid was:
2x faster in IE8
2x faster in IE9
8x faster in FF3.6
6x faster in Chrome 10
when using Ext 4.0.0. We are happy to see these numbers. However, some other customers have brought up the fact that the grid's performance may degrade under certain cases like when you have many columns (40+) or when it is in a certain deeply nested layout configuration. Each time you contribute one of these edge case examples, we can profile against them and they become an integrated part of our metrics.
In the next 4.0.1 release you will see that both of these cases pointed out to us (where you have many columns or you are in deeply nested layouts) the performance has been drastically improved.Aaron Conran
13 May 2011 3:39 PM #4
In the next 4.0.1 release you will see that both of these cases pointed out to us (where you have many columns or you are in deeply nested layouts) the performance has been drastically improved.
Very much looking forward to 4.0.1. I hope it addresses the many other cases beyond those you mentioned in this post.
13 May 2011 3:51 PM #5
Thanks for the feedback Rich. We're looking into various problems that have been pointed out.Aaron Conran
13 May 2011 4:00 PM #6
Several days ago NoahK17 wrote:
13 May 2011 4:04 PM #7Aaron Conran
27 May 2011 5:56 AM #8
2 Jun 2011 2:07 PM #9
- Join Date
- Mar 2007
- Notts/Redwood City
- Vote Rating
How did you make those measurements?
It would be difficult to do for me because I don't have a Windows machine here, only VMs.
But in the past few days we've solved some really severe bottlenecks in layout code which will speed up both initial render and laying out of components.Search the forum: http://www.google.com/coop/cse?cx=01...%3Az7of1ufqccu
Read the docs too: http://extjs.com/deploy/dev/docs/
2 Jun 2011 2:22 PM #10
[OPEN] [OPEN-EXTJSIV-695]JsonPProxyBy steffenk in forum Ext:BugsReplies: 3Last Post: 16 Jun 2012, 2:13 AM
By otelo pons in forum Ext:BugsReplies: 27Last Post: 7 Apr 2012, 9:49 AM
By SebTardif in forum Ext:BugsReplies: 2Last Post: 10 Apr 2011, 9:51 AM
By ojajoh in forum Ext:BugsReplies: 2Last Post: 18 Mar 2011, 2:11 PM
By ValterBorges in forum Ext 3.x: BugsReplies: 31Last Post: 25 Feb 2010, 4:16 PM